2017-01-23 50 views
1
id ref_id  dates 
1  1  2017-01-01 00:00:00 
2  1  2017-01-31 00:00:00 
3  2  2017-01-01 00:00:00 
4  2  2017-01-31 00:00:00 
5  3  2016-01-01 00:00:00 
6  3  2016-01-31 00:00:00 

查詢會像如何比較不同字段的日期字段?

SELECT * FROM table WHERE dates GROUP By ref_id 

我想比較於第2行第1列&結束日期ref_id明智的開始日期應該是當前日期。

所以輸出將只是那些在當前日期之間的ref_id。

輸出

ref_id 
1 
2 

或那1,2-

GROUP_CONCAT想使用單個查詢,而無需UNION。

回答

3

試試這個:

SELECT ref_id 
FROM table 
GROUP BY ref_id 
HAVING NOW() BETWEEN MIN(dates) AND MAX(dates) 

查詢,以獲得當前的日期/時間值使用NOW。如果此值位於由ref_id組的最小和最大日期值定義的時間間隔內,則查詢返回此ref_id