L'utilizzo delle retroquote consente di utilizzare parole riservate come nomi di colonne o tabelle, ad es.
SELECT `values` FROM `references` WHERE `precision` > 0
e nomi con nonalumerici devono essere inclusi anche tra i "` ", ad es.
SELECT `user name` FROM `registered users` WHERE `total score` > 0
Vedere http://dev.mysql.com/doc/refman/5.1/en/identifiers.html per dettagli.
Penso che questo sia visto spesso quando quei nomi sono usati dinamicamente, per es. (Esempio artificiale)
mysql_prepare_statement("SELECT `%q` FROM `%q` WHERE `%q` > 0", col, tbl, col_cond);
in questa forma, qualsiasi tipo di nomi di colonna e di tabella può essere gestito in modo identico, e tentativi di iniezione dannosi come col = "1; DROP TABLE users--"
può essere evitato.
Si noti che questo non si applica solo alle colonne ma anche alle tabelle. – BoltClock
Mi sono spesso chiesto questo: la risposta di KennTM qui sotto è corretta, ma quanto spesso ci imbattiamo in questo? Mai ... ma è ancora molto popolare usare i backtick. Penso che forse le persone apprezzino esattamente come designano visivamente le diverse parti della grammatica. (Forse sono d'accordo ... specialmente se non sono in grado di capitalizzare le parole chiave, che è anche bello, ma mi viene strappato). –