Pertanyaan Bagaimana cara menggunakan lebih besar dari operator dengan tanggal?


Tidak tahu apa yang sedang terjadi di sini. Ini adalah kueri, langsung dari phpMyAdmin:

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

Tapi saya konsisten mendapatkan semua catatan dalam tabel yang dikembalikan, termasuk yang dengan tanggal mulai 2012-11-01. Apa yang memberi?


76
2017-11-19 05:47


asal


Jawaban:


Anda telah diperbesar start_date dengan kutipan tunggal yang menyebabkannya menjadi string, gunakan backtick sebagai gantinya

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

131
2017-11-19 05:49



Dalam pernyataan Anda, Anda membandingkan string yang disebut mulai tanggal dengan waktu.
Jika mulai tanggal adalah kolom, seharusnya juga

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

(tidak ada tanda kutip) atau


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

(dengan backticks).

Semoga ini membantu.


18
2017-11-19 06:22



Coba ini.

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

7
2017-11-19 08:11