久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

跟同事理論:這個mysql 字段用什么好?

瀏覽:129日期:2022-06-21 15:47:05

問題描述

一個數(shù)組序列化,大概長度不到一百,偶爾有200吧,不過很少幾乎沒,然后 同事用了char類型,然后用255個字節(jié), 他說 速度快我覺得 這個表有其他類型 包括文本,時間,int等,作為一個表已經(jīng)不是靜態(tài)表了,動態(tài)表char類型速度是沒區(qū)別的!所以我覺得用varchar 類型 255比較合適~ 節(jié)省點(diǎn)字節(jié),現(xiàn)在數(shù)據(jù)庫已經(jīng)99M了 我擦~~

大家覺得如何?

問題解答

回答1:

這個用哪個影響都不會太大。

char占用固定長度,在MyISAM引擎中,數(shù)據(jù)的物理結(jié)構(gòu)上會連續(xù)一點(diǎn),速度在某些場景下是會快一點(diǎn),產(chǎn)生碎片會少一點(diǎn)。典型的空間換時間。

在InnoDB引擎中,影響不會太大,沒什么好爭論的。

現(xiàn)在MyISAM引擎基本沒人使用了,InnoDB上char類型的使用會浪費(fèi)更多的內(nèi)存池空間。

經(jīng)驗(yàn)之談。InnoDB引擎如果是固定長度的就用char,比如32位md5的值存儲就用char(32)基他用varchar。

回答2:

經(jīng)驗(yàn)之談是

相對固定長度的字符一般用char,比如這個列絕大部分都是在200,有198,197的這種非固定長度,并且跨度較大的,會用varchar,比如一部分是200,還有一部分是2的這種

char一般會在效率等方面比varchar好一些

回答3:

要知道char是固定長度,有多余的以空格填充,速度自然比varchar快,要說到字節(jié),varchar對英文與漢字都是2個字節(jié),而char對英文一個字節(jié),漢字兩個字節(jié)。當(dāng)然char類型對數(shù)據(jù)的處理相對來說也要使用trim來消除空格。所以到底要使用什么還是要看你真正要追求的是什么。

回答4:

速度快?網(wǎng)上看的?自己試驗(yàn)過?不想呵呵了,固定短字符用char,其他用varchar

回答5:

用測試數(shù)據(jù)說話。跑個1個G數(shù)據(jù)寫入查詢更新,試試就知道了

相關(guān)文章:
主站蜘蛛池模板: 太仓市| 新疆| 湘乡市| 禄劝| 馆陶县| 溆浦县| 车致| 濉溪县| 视频| 红河县| 宝丰县| 塔河县| 阿拉尔市| 靖安县| 广南县| 忻州市| 烟台市| 会宁县| 霍邱县| 从化市| 岗巴县| 克拉玛依市| 巍山| 蚌埠市| 江油市| 大厂| 佛坪县| 湛江市| 凌海市| 宿松县| 凌源市| 兰坪| 马公市| 时尚| 石阡县| 盘锦市| 茂名市| 旅游| 井研县| 双城市| 甘谷县|