2012-11-19 8 views
68

Non ho idea di cosa sta succedendo qui. Qui è la query, fin dalla phpMyAdmin:Come usare maggiore dell'operatore con data?

SELECT * FROM `la_schedule` WHERE 'start_date' >'2012-11-18'; 

Ma ho sempre ottenere tutti i record nella tabella restituita, compresi quelli con data di inizio 2012-11-01. Cosa dà?

+0

è la vostra colonna start_date di tipo data o timestamp? –

risposta

122

avete enlosed start_date con apice singolo rendendolo stringa, utilizzare backtick invece

SELECT * FROM `la_schedule` WHERE `start_date` > '2012-11-18'; 
17

Nella sua dichiarazione, si sta confrontando una stringa chiamata start_date con il tempo.
Se start_date è una colonna, o esso deve essere

 

    SELECT * FROM `la_schedule` WHERE start_date >'2012-11-18'; 
 

(senza apostrofo) o

 

SELECT * FROM `la_schedule` WHERE `start_date` >'2012-11-18'; 
 

(con backticks).

Spero che questo aiuti.

7

Prova questo.

SELECT * FROM la_schedule WHERE `start_date` > '2012-11-18'; 
Problemi correlati