在這個令人尷尬的小時數裏,在這裏閱讀過類似的帖子,但沒有找到一個回答這個問題的記錄。MySQL查找和合並最接近日期範圍的記錄
具有類似於此的表[ID是PK /自動,日期是日期字段]
ID, Date, Vehicle, Odometer
1, 1/7/14, A16, 55512
2, 1/9/14, A16, 55600
3, 1/10/14, A16, 55600
4, 1/29/14, A16, 56213
5, 1/4/14, A17, 99512
6, 1/12/14, A17, 99600
7, 1/16/14, A17, 99600
8, 1/22/14, A17, 99213
我想創建一個查詢(最終將成爲一個存儲過程)其中,I通過在兩個日期參數,「從」和「to」,並把它返回(使用14年1月1日和14年1月31日作爲日期參數例如)通過車輛這樣分組的列表:
Vehicle, From_ID, From_Date, From_Odometer, To_ID, To_Date, To_Odometer
A16, 1, 1/7/14, 55512, 4, 1/29/14, 56213
A17, 5, 1/4/14, 99512, 8, 1/22/14, 99213
是否嘗試的多個組合查詢,子查詢,查看與DATEDIFF和MAX結合日期< =但沒有得到數據排列我怎麼需要它。
例如:
select
table.ID
, max(table.`Date`) as TheDate
, table.Odometer
FROM table
where table.Odometer > 0
and table.`Date`<= str_to_date('2/1/14','%m/%d/%Y');
是企圖得到什麼,我需要的一部分,但得到正確的日期,但不正確的ID和不正確的里程錶。
有什麼建議嗎?
以日期存儲日期,然後回來給我們 – Strawberry