我有這兩個表:MySQL的選擇,加盟,比較日期失敗
DateRanges
some_id start_date end_date
---------------------------------
1 2012-12-01 2012-12-15
1 2013-01-01 2013-01-15
3 2013-01-03 2013-01-10
Items
id name
----------------
1 Some name
2 Other name
3 So on...
我試圖做到的,是得到的,每個元素在Items
表,最大start_date
(忽略較小的日期/時間範圍該項目),並檢查當前的日期是在這個範圍內,將在未來的表(讓我們說今天的2013年1月2日):
id name TodayIsInTheRange
---------------------------------------------
1 Some name true
2 Other name false
3 So on... false
我試圖獲得與一個查詢的第三個表:
SELECT A.*, (B.`start_date` <= CURRENT_DATE AND CURRENT_DATE <= B.`end_date`) AS `TodayIsInTheRange`
FROM `Items` as A
LEFT JOIN `DateRanges` as B ON
A.id = B.some_id
SORT BY B.`end_date` DESC
但對於這個查詢我的項目重複自己,因爲我有兩個記錄DateRanges
爲同一項目。
是如何形成的題外話? – markus