我需要also.So我使用這樣大於號和小於在我的SQL
"SELECT * FROM events WHERE start_date <= '2016-01-21%' AND start_date >= '2016-01-19%'"
查詢到的數據獲取從2016年1月19日至2016年1月21日,包括日期,但我只得到2016-01-19,2016-01-20數據,而不是2016-01-21。如果在查詢中有任何錯誤,請分享答案。
我需要also.So我使用這樣大於號和小於在我的SQL
"SELECT * FROM events WHERE start_date <= '2016-01-21%' AND start_date >= '2016-01-19%'"
查詢到的數據獲取從2016年1月19日至2016年1月21日,包括日期,但我只得到2016-01-19,2016-01-20數據,而不是2016-01-21。如果在查詢中有任何錯誤,請分享答案。
首先請確保數據庫提交的 「起始日期」類型是日期時間我們也需要格式化日期時間迄今爲止
the tr y指向這個
SELECT * FROM events WHERE (DATE_FORMAT(start_date, '%Y-%m-%d') >= '2016-01-19' AND DATE_FORMAT(start_date, '%Y-%m-%d') <= '2016-01-21')
start_date的數據類型是datetime.I用過ur查詢但它返回與我的查詢相同。 –
它只返回19和20數據,沒有顯示21數據 –
請檢查現在的答案它會工作 –
使用between
SELECT *
FROM events
WHERE start_date BETWEEN date(2016-01-21 00:00:00) AND date(2016-01-19 23:59:59);
您可以使用之間,但使用它時,第一個日期必須小於第二牢記。對不起,第一個答案說的是相反的。
SELECT *
FROM events
WHERE start_date
BETWEEN date(2016-01-19 00:00:00)
AND date(2016-01-21 23:59:59)
使用'between'關鍵字爲MySQL –