首頁 > 資料庫 > mysql教程 > 如何在 MySQL 選擇查詢中將 UTC 日期轉換為本機時區?

如何在 MySQL 選擇查詢中將 UTC 日期轉換為本機時區?

Linda Hamilton
發布: 2024-11-26 04:21:09
原創
917 人瀏覽過

How to Convert UTC Dates to Local Time Zone in MySQL Select Query?

在MySQL 選擇查詢中將UTC 日期轉換為本地時區

問題

您正在使用包含「Dplaytime」列的Mydisplaytime」欄位的MycSQL 查詢以UTCUTCUTC格式儲存時間戳記。但是,您需要顯示本地時區的時間戳記。 CONVERT_TZ() 函數未如預期般運作。

解決方案

要使用 CONVERT_TZ() 函數將 UTC 時間戳轉換為本地時區,您必須指定兩者的時區縮寫UTC 和本地時區。正確的語法如下:

SELECT CONVERT_TZ(displaytime, 'UTC', 'LOCAL')
登入後複製

範例查詢

WHERE displaytime >= '2012-12-01 00:00:00'
AND displaytime <= '2013-02-22 23:59:59'
AND ct.organizationId IN (
  SELECT t.organizationId
  FROM organization_ AS t
  JOIN organization_ AS p ON t.treePath LIKE CONCAT(p.treePath, '%')
  WHERE p.organizationId = 10707
)
登入後複製

修改後的查詢:

WHERE CONVERT_TZ(displaytime, 'UTC', 'LOCAL') >= '2012-12-01 00:00:00'
AND CONVERT_TZ(displaytime, 'UTC', 'LOCAL') <= '2013-02-22 23:59:59'
AND ct.organizationId IN (
  SELECT t.organizationId
  FROM organization_ AS t
  JOIN organization_ AS p ON t.treePath LIKE CONCAT(p.treePath, '%')
  WHERE p.organizationId = 10707
)
登入後複製

疑難排解如果CONVERT_TZ() 不起作用,可能是因為時區表遺失或為空。您可以使用 mysql_tzinfo_to_sql 程式初始化時區表。

以上是如何在 MySQL 選擇查詢中將 UTC 日期轉換為本機時區?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板