2017-08-06 81 views
0
條款
SELECT * FROM `siparisler` WHERE `cafe_id` = 3 AND DATE_FORMAT(tarih,'%Y-%m-%d') BETWEEN 2017-08-01 AND 2017-08-06 

我的日期都這樣對我的表(tarih)2017年2月22日15時28分33秒 所以我想,當cafe_id是那些3至tarih檢索數據兩個日期。凡與日期格式和其他變量

但是當我運行這個查詢時,我得到零結果。 可能是什麼問題。我找不到任何解決方案。

+0

用引號括起日期 –

回答

0

DATE_FORMAT()用於日期數據類型。你不需要它。你只需要圍繞常量引號:

SELECT s.* 
FROM siparisler s 
WHERE s.cafe_id = 3 AND 
     s.tarih >= '2017-08-01' AND 
     s.tarih < '2017-08-07' 

注意,我從BETWEEN不變的情況來直接比較。這是有意的。無論tarih是否具有時間組件,該邏輯都將起作用。

0

你錯過了引用日期字符串文字。它應該是

BETWEEN '2017-08-01' AND '2017-08-06'