1
因此,我使用此代碼從數據庫獲取每一天的最後一個條目。如何使用帶CONVERT_TZ的MySQL來獲取每天的最後一個條目()
SELECT a.id, a.userid, a.jurisdiction, a.country, a.date
FROM dk_location_records AS a,
(SELECT userid, DATE(date) AS just_date, MAX(date) AS date
FROM dk_location_records
GROUP BY 1, 2 --userid, DATE(date)
) AS b
WHERE a.userid = b.userid
AND a.date = b.date;
我的問題是,我怎麼可以將類似:CONVERT_TZ(date, '+00:00', '+01:00')
得到每天的最後一項爲不同的時區。到目前爲止,我已設法使用CONVERT_TZ
來簡單顯示轉換日期。但是,您可以同時使用MAX()
和CONVERT_TZ()
嗎?
嗨Nalthariel,謝謝你。我會盡量多解釋一下。 目前,所有的日期都是UTC。我正在構建的應用程序每天存儲多條數據條目。我想要通過每一天獲得最後一次輸入,並從中輸出信息。 如果我們假設我正在談論UTC中的最後一個條目,那麼上述方法很好。但是,當然,如果我在新加坡的最後一次入境會有所不同。所以,使用相同的數據集,我需要從不同時區的每一天獲取最後一個條目... –
...所以,一個例子。我有一個條目,說我在7月17日晚上11:58在英國時間是UTC(現在忽略夏令時)。在新加坡,同樣的條目將顯示我在7月18日上午7:58在英國。因此,在新加坡的時區,這不是最後一天,因爲在7月18日下午3:58(UTC)7月18日晚11點58分(新加坡)可能會有另一個入口。 我很欣賞這有點瘋狂,但我認爲,如果我可以做到這一點,這是實現我正在嘗試做的最好的方法。 –
在這種情況下,如果您在結果集上添加了條件約束,那麼上面的方法就可以工作,定義您嘗試限制的那一天,就像我添加到答案中一樣。 – Naltharial