[mySQL] W l'ignoranza... al mia naturalmente Clicca QUI per vedere il messaggio nel forum |
0m4r |
e anche con questo post credo di riconfermarmi il più ignorante del forum... cmq bando ai complimenti e all'autocelebrazione e continuiamo con la mia domanda.
Come si fa a selezionare l'ultimo record da una tabella?
con access era suffiviente utilizzare un operatore all'interno della select: [b]SELECT LAST(parmatero) FROM Tabella
ma in mySQL non funziona!
mySQLHELP!!!!!! |
muttley |
Originally posted by "0m4r"
e anche con questo post credo di riconfermarmi il più ignorante del forum... cmq bando ai complimenti e all'autocelebrazione e continuiamo con la mia domanda.
Come si fa a selezionare l'ultimo record da una tabella?
con access era suffiviente utilizzare un operatore all'interno della select: [b]SELECT LAST(parmatero) FROM Tabella
ma in mySQL non funziona!
mySQLHELP!!!!!!
Per quel che ne so, LAST non c'è in SQL standard... sarà un'estensione di Microsoft. Non mi pare che in SQL si possa selezionare una riga sulla base della sua posizione, anche perchè in assenza di un criterio di ordinamento non credo sia saggio dare per scontato che il DBMS ritorni le righe di una tabella sempre nello stesso ordine... presumibilmente l'ordine dipenderà dalle sue strutture dati interne, che potrebbero cambiare. Ma poi, dove la devi fare questa SELECT? Tipicamente, in ogni linguaggio di programmazione di alto livello, quando ci si interfaccia con un DBMS c'è il modo di "scorrere" le righe restituite da una selezione... in questo caso è facile portarsi sull'ultima riga, qualunque essa sia. |
korn |
se la tabella è indicizzata da una chiave primaria unica (l'ID insomma) basta impostare la query in questo modo:
SELECT * FROM nometabella ORDER BY nomecampoid DESC
ad esempio:
SELECT * FROM Iscritti ORDER BY ID DESC
in questo modo te li ordina in base all'id in modo decrescente, quindi l'ultimo inserito è in cima alla lista ;-)
io personalmente uso spesso questo sistema al lavoro e funziona.. |
|
|
|