欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > MySQL存儲時間類型選擇的問題講解

MySQL存儲時間類型選擇的問題講解

熱門標簽:電銷機器人各個細節介紹 昆明電信400電話辦理 電銷機器人 行業 俄國地圖標注app 溫州瑞安400電話怎么申請 電話機器人市場趨勢 南昌高頻外呼系統哪家公司做的好 百度地圖標注后不顯示 淄博400電話申請

MySQL中存儲時間通常會用datetime類型,但現在很多系統也用int存儲unix時間戳,它們有什么區別?本人總結如下:

int

(1)4個字節存儲,INT的長度是4個字節,存儲空間上比datatime少,int索引存儲空間也相對較小,排序和查詢效率相對較高一點點

(2)可讀性極差,無法直觀的看到數據

TIMESTAMP

(1)4個字節儲存

(2)值以UTC格式保存

(3)時區轉化 ,存儲時對當前的時區進行轉換,檢索時再轉換回當前的時區。

(4)TIMESTAMP值不能早于1970或晚于2037

datetime

(1)8個字節儲存

(2)與時區無關

(3)以'YYYY-MM-DD HH:MM:SS'格式檢索和顯示DATETIME值。支持的范圍為'1000-01-01 00:00:00'到'9999-12-31 23:59:59'

隨著Mysql性能越來越來高,個人覺得關于時間的存儲方式,具體怎么存儲看個人習慣和項目需求吧

分享兩篇關于int vs timestamp vs datetime性能測試的文章

Myisam:MySQL DATETIME vs TIMESTAMP vs INT 測試儀

CREATE TABLE `test_datetime` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`datetime` FIELDTYPE NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM;

機型配置

  • kip-locking
  • key_buffer = 128M
  • max_allowed_packet = 1M
  • table_cache = 512
  • sort_buffer_size = 2M
  • read_buffer_size = 2M
  • read_rnd_buffer_size = 8M
  • myisam_sort_buffer_size = 8M
  • thread_cache_size = 8
  • query_cache_type = 0
  • query_cache_size = 0
  • thread_concurrency = 4

測試

DATETIME   14111 14010        14369     130000000
TIMESTAMP  13888        13887        14122     90000000
INT        13270        12970        13496     90000000

執行mysql

mysql> select * from test_datetime into outfile ‘/tmp/test_datetime.sql';
Query OK, 10000000 rows affected (6.19 sec)

mysql> select * from test_timestamp into outfile ‘/tmp/test_timestamp.sql';
Query OK, 10000000 rows affected (8.75 sec)

mysql> select * from test_int into outfile ‘/tmp/test_int.sql';
Query OK, 10000000 rows affected (4.29 sec)

alter table test_datetime rename test_int;
alter table test_int add column datetimeint INT NOT NULL;
update test_int set datetimeint = UNIX_TIMESTAMP(datetime);
alter table test_int drop column datetime;
alter table test_int change column datetimeint datetime int not null;
select * from test_int into outfile ‘/tmp/test_int2.sql';
drop table test_int;

So now I have exactly the same timestamps from the DATETIME test, and it will be possible to reuse the originals for TIMESTAMP tests as well.

mysql> load data infile ‘/export/home/ntavares/test_datetime.sql' into table test_datetime;
Query OK, 10000000 rows affected (41.52 sec)
Records: 10000000 Deleted: 0 Skipped: 0 Warnings: 0

mysql> load data infile ‘/export/home/ntavares/test_datetime.sql' into table test_timest
Query OK, 10000000 rows affected, 44 warnings (48.32 sec)
Records: 10000000 Deleted: 0 Skipped: 0 Warnings: 44

mysql> load data infile ‘/export/home/ntavares/test_int2.sql' into table test_int;
Query OK, 10000000 rows affected (37.73 sec)
Records: 10000000 Deleted: 0 Skipped: 0 Warnings: 0

As expected, since INT is simply stored as is while the others have to be recalculated. Notice how TIMESTAMP still performs worse, even though uses half of DATETIME storage size.

Let's check the performance of full table scan:

mysql> SELECT SQL_NO_CACHE count(id) FROM test_datetime WHERE datetime > ‘1970-01-01 01:30:00′ AND datetime  ‘1970-01-01 01:35:00′;
+———–+
| count(id) |
+———–+
|  211991 |
+———–+
1 row in set (3.93 sec)

mysql> SELECT SQL_NO_CACHE count(id) FROM test_timestamp WHERE datetime > ‘1970-01-01 01:30:00′ AND datetime  ‘1970-01-01 01:35:00′;
+———–+
| count(id) |
+———–+
|  211991 |
+———–+
1 row in set (9.87 sec)

mysql> SELECT SQL_NO_CACHE count(id) FROM test_int WHERE datetime > UNIX_TIMESTAMP('1970-01-01 01:30:00′) AND datetime  UNIX_TIMESTAMP('1970-01-01 01:35:00′);
+———–+
| count(id) |
+———–+
|  211991 |
+———–+
1 row in set (15.12 sec)

Then again, TIMESTAMP performs worse and the recalculations seemed to impact, so the next good thing to test seemed to be without those recalculations: find the equivalents of those UNIX_TIMESTAMP() values, and use them instead:

mysql> select UNIX_TIMESTAMP('1970-01-01 01:30:00′) AS lower, UNIX_TIMESTAMP('1970-01-01 01:35:00′) AS bigger;
+——-+——–+
| lower | bigger |
+——-+——–+
| 1800 |  2100 |
+——-+——–+
1 row in set (0.00 sec)

mysql> SELECT SQL_NO_CACHE count(id) FROM test_int WHERE datetime > 1800 AND datetime  2100;
+———–+
| count(id) |
+———–+
|  211991 |
+———–+
1 row in set (1.94 sec)

Innodb:MySQL DATETIME vs TIMESTAMP vs INT performance and benchmarking with InnoDB

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內容請查看下面相關鏈接

您可能感興趣的文章:
  • MySQL 時間類型的選擇
  • 如何選擇合適的MySQL日期時間類型來存儲你的時間
  • 關于mysql 的時間類型選擇
  • 解析MySql與Java的時間類型
  • MySQL日期數據類型、時間類型使用總結
  • MySQL時間類型和模式詳情

標簽:吐魯番 安徽 洛陽 拉薩 葫蘆島 甘南 嘉峪關 海口

巨人網絡通訊聲明:本文標題《MySQL存儲時間類型選擇的問題講解》,本文關鍵詞  MySQL,存儲,時間,類型,選擇,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL存儲時間類型選擇的問題講解》相關的同類信息!
  • 本頁收集關于MySQL存儲時間類型選擇的問題講解的相關信息資訊供網民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    国产黄a三级三级| 久久国产精品99久久人人澡| 亚洲一区二区三区国产| 中文字幕一区二区三区四区不卡| 日本一二三不卡| 综合欧美一区二区三区| 一区二区三区中文在线观看| 亚洲va韩国va欧美va精品| 美国十次综合导航| 国产精品66部| 亚洲国产日韩在线一区| 在线精品一区二区三区| 亚洲欧美精品久久| 色中色一区二区| 欧洲视频一区二区| 日韩亚洲国产中文字幕欧美| 久久久噜噜噜久噜久久综合| 中文字幕视频一区二区三区久| 一区二区国产盗摄色噜噜| 日韩精品一区第一页| 国产在线精品免费av| 99精品久久只有精品| 国产精品第七页| 国产免费嫩草影院| 中文字幕av免费在线观看| 欧美老肥妇做.爰bbww视频| 精品卡一卡二卡三卡四在线| 国产精品久久久久久久午夜片| 136国产福利精品导航| 成人午夜视频网站| 91丨九色丨国产丨porny| 制服丝袜在线第一页| 国产又粗又猛又爽又黄av| 色老综合老女人久久久| 日韩欧美黄色影院| 国产精品国产三级国产普通话蜜臀 | 久久网这里都是精品| 亚洲视频图片小说| 亚洲不卡一区二区三区| 国产高清在线精品| 老司机午夜免费福利| 91传媒免费观看| 欧美一区午夜精品| 国产精品女上位| 亚洲最色的网站| 国产一区福利在线| 北京富婆泄欲对白| 老熟妻内射精品一区| 日韩视频免费观看高清在线视频| 国产精品成人在线观看| 美日韩一级片在线观看| 91香蕉国产在线观看软件| 国产91丝袜美女在线播放| 欧美日韩国产一级二级| 国产精品色哟哟| 久久精品国产亚洲a| 中文字幕无码毛片免费看| 中文字幕在线观看免费高清| 欧美色男人天堂| 国产精品久久久久久久久免费丝袜| 秋霞午夜av一区二区三区| 能看毛片的网站| www.4hu95.com四虎| 欧美一级二级三级乱码| 亚洲一二三区不卡| 日韩av一级电影| 亚洲欧美日韩人成在线播放| 麻豆91在线观看| 人妻av一区二区三区| 午夜国产精品影院在线观看| 成人aa视频在线观看| 亚洲ⅴ国产v天堂a无码二区| 日韩一区二区三区免费看 | 亚洲一二三精品| 制服丝袜av成人在线看| 亚洲最大的成人av| 成a人片国产精品| 特黄一区二区三区| 精品国产乱码久久| 日本不卡免费在线视频| 黄色av电影网站| 91久久一区二区| 亚洲欧美视频一区| 成人动漫一区二区在线| 国产成人av免费在线观看| 国产亚洲欧洲997久久综合| 麻豆91精品91久久久的内涵| 屁屁影院国产第一页| 欧美日韩国产综合视频在线观看| 亚洲精品v日韩精品| 国产一区 二区| 亚洲а∨天堂久久精品2021| 精品国产乱码久久久久久浪潮 | 中文字幕人妻熟女人妻a片| 熟女少妇a性色生活片毛片| 久久青草欧美一区二区三区| 人妖欧美一区二区| 国产十八熟妇av成人一区| 678五月天丁香亚洲综合网| 亚洲一区二区在线免费看| 男人的天堂免费| 欧美精品丝袜中出| 日本欧美肥老太交大片| 大又大又粗又硬又爽少妇毛片| 欧美丰满高潮xxxx喷水动漫| 午夜精品久久久久| 亚洲天堂成人av| 欧美一卡二卡在线| 蜜臀精品一区二区三区在线观看| 人妻少妇无码精品视频区| 久久久久久久久久久久久夜| 国产福利精品导航| 日本性高潮视频| 欧美韩日一区二区三区四区| 成人听书哪个软件好| 在线亚洲免费视频| 亚洲国产综合91精品麻豆| theav精尽人亡av| 岛国精品资源网站| 欧美日韩亚洲高清一区二区| 亚洲国产日韩a在线播放| 韩国无码一区二区三区精品| 欧美精品一区二区三区蜜臀| 丁香六月久久综合狠狠色| 在线日韩一区二区| 午夜天堂影视香蕉久久| 中文字幕免费视频| 久久精品视频在线看| eeuss影院一区二区三区| 欧美综合一区二区| 日韩av电影天堂| 99在线视频免费| 亚洲三级电影网站| 性欧美丰满熟妇xxxx性久久久| 2024国产精品视频| youjizz国产精品| 欧美一区二区在线播放| 国内外成人在线视频| 色婷婷激情综合| 日韩综合在线视频| 中文字幕第二区| 一区二区三区在线免费| 疯狂揉花蒂控制高潮h| 中文字幕精品在线不卡| 97se亚洲国产综合在线| 日韩欧美国产不卡| 97久久精品人人做人人爽| 精品乱码亚洲一区二区不卡| 国产成人精品影视| 欧美猛男gaygay网站| 国产精选一区二区三区| 精品视频1区2区3区| 男女性色大片免费观看一区二区 | 亚洲一区欧美一区| 久久精品—区二区三区舞蹈| 综合久久国产九一剧情麻豆| 国产精品久久不卡| 亚洲人快播电影网| 成都免费高清电影| 午夜精品久久久久| 欧美色区777第一页| 成人不卡免费av| 国产亚洲人成网站| 国产精品815.cc红桃| 五月婷婷色综合| 欧美日韩在线播放| 99久久精品免费看国产| 欧美高清在线视频| 99精品全国免费观看| 美女视频网站黄色亚洲| 91麻豆精品国产91久久久更新时间| 99精品欧美一区二区三区小说| 国产欧美视频一区二区| 国产成人无码精品久久二区三| 亚洲3atv精品一区二区三区| 色狠狠一区二区三区香蕉| 国产精品自拍av| 精品国产伦一区二区三区观看体验 | 久久av老司机精品网站导航| 91精品国产综合久久久久久| 免费黄视频在线观看| 亚洲精品高清视频在线观看| 色婷婷久久久综合中文字幕| www.66久久| 成人欧美一区二区三区在线播放| 亚洲精品一区二区三区在线播放| 精品一区二区三区免费视频| 精品欧美一区二区在线观看| 少妇饥渴放荡91麻豆| 日韩电影免费在线看| 欧美一级欧美一级在线播放| 亚洲午夜成aⅴ人片| 91精品1区2区| av高清不卡在线| 亚洲婷婷综合久久一本伊一区| 精品一区在线观看视频| 成人av网在线| 亚洲人成网站影音先锋播放| 在线日韩av片| 久久久精品人妻一区二区三区|