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

關(guān)于MySQL的時間進位問題淺析

 更新時間:2019年12月01日 15:19:28   作者:捏造的信仰  
這篇文章主要給大家介紹了關(guān)于MySQL的時間進位問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用MySQL具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧

MySQL 當(dāng)中默認的時間類型(datetime 和 timestamp)的精度是秒,如果設(shè)置進去的時間值精度小于秒的話,就會被四舍五入,可能導(dǎo)致數(shù)據(jù)庫中的值比原始值多了一秒。也就是說,本來屬于今天的記錄可能會被記到明天。

下面是一個例子,演示了時間是如何進位的。首先創(chuàng)建一張表:

CREATE TABLE test_time (
 time_sec   datetime,
 time_millis datetime(3),
 time_micros datetime(6),
 stamp_sec  timestamp,
 stamp_millis timestamp(3),
 stamp_micros timestamp(6)
);

有的讀者可能不知道 datetime 和 timestamp 定義時是可以帶精度的,精度值為 0~6,表示保留幾位小數(shù),默認值為 0。顯然保留 3 位可看作精度為毫秒,保留 6 位可看作精度為微秒。

然后我們插入一條記錄:

INSERT INTO test_time
( time_sec, time_millis, time_micros, 
 stamp_sec, stamp_millis, stamp_micros )
VALUES(
 '2019-11-30 12:34:56.987654', 
 '2019-11-30 12:34:56.987654', 
 '2019-11-30 12:34:56.987654',
 '2019-11-30 12:34:56.987654', 
 '2019-11-30 12:34:56.987654', 
 '2019-11-30 12:34:56.987654'
);

然后再做一次 select * from test_time 查詢就能看到下面的結(jié)果:

time_sec             |time_millis            |time_micros               |stamp_sec            |stamp_millis           |stamp_micros              |
---------------------|-----------------------|--------------------------|---------------------|-----------------------|--------------------------|
2019-11-30 12:34:57.0|2019-11-30 12:34:56.988|2019-11-30 12:34:56.987654|2019-11-30 12:34:57.0|2019-11-30 12:34:56.988|2019-11-30 12:34:56.987654|

可以看到 time_sec 和 stamp_sec 在數(shù)據(jù)庫中的秒值都被進位了,time_millis 和 stamp_millis 的毫秒值都被進位了。

由此可見,要避免這樣的誤差,有兩個手段:

  • 定義字段的時候使用 datetime(6) 或 timestamp(6);
  • 定義字段時不帶精度,但在將時間存入數(shù)據(jù)庫之前,要將毫秒值截取掉。

相關(guān)文檔:

MySQL 5.6 Reference: Fractional Seconds in Time Values

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。

相關(guān)文章

  • MySQL由淺入深探究存儲過程

    MySQL由淺入深探究存儲過程

    存儲過程就是一條或者多條SQL語句的集合,可以視為批文件,它可以定義批量插入的語句,也可以定義一個接收不同條件的SQL,下面這篇文章主要給大家介紹了關(guān)于MySQL中存儲過程的相關(guān)資料,需要的朋友可以參考下
    2022-07-07
  • mysql 5.7.20 zip安裝教程

    mysql 5.7.20 zip安裝教程

    這篇文章主要為大家詳細介紹了mysql 5.7.20 zip安裝教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • 最新評論

    淳安县| 南溪县| 东丽区| 库尔勒市| 定远县| 濮阳市| 建湖县| 车致| 通河县| 三都| 民和| 南皮县| 怀安县| 凤山市| 阿拉尔市| 宜川县| 宣威市| 扬中市| 鲁甸县| 鄂托克旗| 庆城县| 突泉县| 乳山市| 囊谦县| 万安县| 罗平县| 九江市| 大姚县| 云龙县| 贵定县| 大方县| 墨竹工卡县| 北票市| 平遥县| 镇原县| 南靖县| 建德市| 桐梓县| 祁阳县| 新昌县| 栾城县|