0
我需要知道,我如何做到這一點的飛行條件,MySQL的加入與參與上飛
例如我有誰在每個不同交貨期狀態的客戶,我要選擇MAX(最近到期日)ON LEFT JOIN目前當其加入它選擇的最古老的交貨期是不是我想要的兩個表..
SELECT c.customerid, i.datedue
FROM customers c
LEFT JOIN invoice i
ON i.customerid = c.customerid
WHERE i.datedue <= UNIX_TIMESTAMP()
AND c.status!='d'
GROUP BY i.customerid
ORDER BY i.datedue DESC
LIMIT 0, 1000
看起來好像您正在試圖建立一個客戶列表(通過ID),以及他們最近錯過的發票(如果有的話,再次通過ID) - 僅限於前1000個發票?那是對的嗎? – 2012-04-24 04:42:15
由於32位unix時間戳只有68年的時間跨度,並且您可以在時間戳使用本機SQL時更快地執行其他日期函數,所以您還應該將截止日期保存爲日期時間或日期類型。例如,您可以將上述內容更改爲'WHERE i.datedue <= NOW()' – Anthony 2012-04-24 04:59:31