最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL 中 DATE / DATETIME / TIMESTAMP 的區(qū)別小結

 更新時間:2026年02月12日 08:51:04   作者:Knight_AL  
在 MySQL 中,DATE、DATETIME、TIMESTAMP 都用來表示時間,但語義、存儲方式以及對時區(qū)的處理完全不同,本文就來詳細的介紹一下這三種的用法,感興趣的可以了解一下

在 MySQL 中,DATE、DATETIME、TIMESTAMP 都用來表示時間,但語義、存儲方式以及對時區(qū)的處理完全不同。如果不理解這些差異,很容易在系統(tǒng)國際化或統(tǒng)計分析時踩坑。

一、核心區(qū)別一覽表

類型是否包含時間是否涉及時區(qū)存儲大小典型用途
DATE? 僅日期? 否3 bytes生日、賬期、自然日
DATETIME? 日期+時間? 否8 bytes業(yè)務時間、規(guī)則時間
TIMESTAMP? 日期+時間? 是4 bytes事件發(fā)生時間、日志

二、DATE:只表示“哪一天”

DATE
-- 示例:2025-12-16

特點

  • 只包含年 / 月 / 日
  • 不包含具體時間
  • 不受時區(qū)影響

適合場景

  • 生日
  • 財務賬期
  • 按天統(tǒng)計的數(shù)據(jù)

?? DATE 不表示時間點,因此不涉及跨時區(qū)問題。

三、DATETIME:不關心時區(qū)的“本地時間”

DATETIME
-- 示例:2025-12-16 14:30:00

核心語義

墻上時間(Wall Clock Time)

  • MySQL 不會做任何時區(qū)轉換
  • 存什么就是什么
  • 不同國家查詢結果完全一致

示例

INSERT INTO t VALUES ('2025-12-16 14:30:00');

無論在中國還是美國查詢,結果都是:

2025-12-16 14:30:00

適合場景

  • 預約時間(“當?shù)?9 點開會”)
  • 促銷、業(yè)務規(guī)則時間
  • 和地理位置強綁定的時間

?? 不適合表示“事件發(fā)生的真實時間”

四、TIMESTAMP:表示“絕對時間點”

TIMESTAMP

核心語義

全球唯一的時間瞬間(UTC)

  • 底層統(tǒng)一存 UTC
  • 寫入時:本地時區(qū) → UTC
  • 查詢時:UTC → 當前 session 時區(qū)
  • 同一條記錄在不同時區(qū)顯示不同時間

示例

-- session time_zone = '+08:00'
INSERT INTO t VALUES (NOW());

數(shù)據(jù)庫存儲的是:                       

2025-12-16 06:30:00 (UTC)

-- session time_zone = '-05:00'
SELECT time FROM t;

查詢結果為:

2025-12-16 01:30:00

?? 顯示不同,但指向同一個瞬間。

五、三者如何選擇?

推薦原則

先想清楚:你要表達的是“同一個瞬間”,還是“同一個顯示時間”?

  • 同一個瞬間 → TIMESTAMP
  • 同一個顯示時間 → DATETIME
  • 只關心日期 → DATE

六、跨國系統(tǒng)的推薦做法

在跨國 / 多時區(qū)系統(tǒng)中:

  • 事件時間(創(chuàng)建、支付、日志)
    ?? 使用 TIMESTAMP
  • 業(yè)務規(guī)則時間(預約、促銷)
    ?? 使用 DATETIME
  • 純日期字段
    ?? 使用 DATE

常見設計示例

created_at   TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
biz_time     DATETIME  NOT NULL
biz_timezone VARCHAR(32)

這樣既能保證技術上的時間統(tǒng)一,又不丟失業(yè)務語義。

七、總結

  • DATE:表示“哪一天”
  • DATETIME:表示“本地時間,不變”
  • TIMESTAMP:表示“絕對時間,會隨時區(qū)變化”

到此這篇關于MySQL 中 DATE / DATETIME / TIMESTAMP 的區(qū)別小結的文章就介紹到這了,更多相關MySQL DATE DATETIM TIMESTAMP內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • mysql中取系統(tǒng)當前時間,當前日期方便查詢判定的代碼

    mysql中取系統(tǒng)當前時間,當前日期方便查詢判定的代碼

    今天在寫一段查詢語句的時候,需要判定結束日期是不是大于當前日期,一般情況下都是通過php判定日期,然后查詢。
    2011-12-12
  • mariadb集群搭建---Galera Cluster+ProxySQL教程

    mariadb集群搭建---Galera Cluster+ProxySQL教程

    這篇文章主要介紹了mariadb集群搭建---Galera Cluster+ProxySQL教程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • MySQL 索引和數(shù)據(jù)表該如何維護

    MySQL 索引和數(shù)據(jù)表該如何維護

    使用合適的數(shù)據(jù)類型完成數(shù)據(jù)表創(chuàng)建和建立索引后,工作并沒有完結——你需要去維護數(shù)據(jù)表和索引以保證它們運行良好。數(shù)據(jù)表維護的主要目的是查找和修復沖突,維護精確的索引統(tǒng)計和減少碎片。
    2021-05-05
  • MySQL常用聚合函數(shù)詳解

    MySQL常用聚合函數(shù)詳解

    下面小編就為大家?guī)硪黄狹ySQL常用聚合函數(shù)詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • MySQL數(shù)據(jù)庫卸載以及刪除所有有關信息詳細步驟

    MySQL數(shù)據(jù)庫卸載以及刪除所有有關信息詳細步驟

    在MySQL中數(shù)據(jù)刪除操作不僅僅是簡單地將某一個或多個行刪除,下面這篇文章主要給大家介紹了關于MySQL數(shù)據(jù)庫卸載以及刪除所有有關信息的詳細步驟,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-06-06
  • 深入mysql慢查詢設置的詳解

    深入mysql慢查詢設置的詳解

    本篇文章是對mysql慢查詢設置進行了詳細的分析介紹,需要的朋友參考下
    2013-06-06
  • MySQL新增字段后Java實體未更新的潛在問題與解決方案

    MySQL新增字段后Java實體未更新的潛在問題與解決方案

    在Java+MySQL的開發(fā)中,我們通常使用ORM框架來映射數(shù)據(jù)庫表與 Java 對象,但有時候,數(shù)據(jù)庫表結構變更(如新增字段)后,開發(fā)人員可能忘記同步更新Java實體類,會導致什么問題?接下小編給大家介紹了MySQL新增字段后Java實體未更新的潛在問題與解決方案
    2025-03-03
  • 幾道MySQL的精選大廠面試題及回答(被提問的幾率很高!)

    幾道MySQL的精選大廠面試題及回答(被提問的幾率很高!)

    金三銀四是面試求職高峰期,最近有很多網(wǎng)友都在求大廠面試題,發(fā)出來分享給大家,這篇文章主要介紹了幾道MySQL的精選大廠面試題及回答,這些題被提問的幾率很高,需要的朋友可以參考下
    2026-04-04
  • 圖文詳解mysql5.7安裝教程

    圖文詳解mysql5.7安裝教程

    這篇文章主要以圖文結合的方式為大家詳細介紹了mysql5.7安裝教程的相關資料,需要的朋友可以參考下
    2016-05-05
  • MySQL中data_sub()函數(shù)定義和用法

    MySQL中data_sub()函數(shù)定義和用法

    使用 date_sub() 函數(shù),從 answer_date 減去相應的天數(shù),這個天數(shù)是由上面計算的行號決定,也就是減去行號,從而來生成一個新的日期,這篇文章主要介紹了MySQL中data_sub()函數(shù),需要的朋友可以參考下
    2024-02-02

最新評論

长丰县| 灵川县| 乃东县| 房山区| 延寿县| 乌苏市| 盐边县| 肃宁县| 乐昌市| 黄大仙区| 栾城县| 顺昌县| 宁武县| 织金县| 连南| 定远县| 金昌市| 张家川| 金乡县| 兴海县| 建水县| 固阳县| 淮安市| 石楼县| 宣武区| 新巴尔虎右旗| 兴山县| 集贤县| 深州市| 龙州县| 宁化县| 遂昌县| 山阳县| 永和县| 新兴县| 巴林左旗| 牟定县| 安平县| 彝良县| 郁南县| 石柱|