成人在线你懂的-成人在线免费小视频-成人在线免费网站-成人在线免费视频观看-日韩精品国产一区二区-日韩精品国产一区

掃一掃
關注微信公眾號

MySQL索引分類和各自用途
2009-05-08   hi.baidu

一、 MySQL: 索引以B樹格式保存

Memory存儲引擎可以選擇Hash或BTree索引,Hash索引只能用于=或<=>的等式比較。

1、普通索引:create index on Tablename(列的列表)

alter table TableName add index (列的列表)

create table TableName([...], index [IndexName] (列的列表)

2、唯一性索引:create unique index

alter ... add unique

主鍵:一種唯一性索引,必須指定為primary key

3、全文索引:從3.23.23版開始支持全文索引和全文檢索,FULLTEXT,

可以在char、varchar或text類型的列上創建。

4、單列索引、多列索引:

多個單列索引與單個多列索引的查詢效果不同,因為:

執行查詢時,MySQL只能使用一個索引,會從多個索引中選擇一個限制最為嚴格的索引。

5、最左前綴(Leftmost Prefixing):多列索引,例如:fname_lname_age索引,以下的搜索條件MySQL都將使用

fname_lname_age索引:firstname,lastname,age;firstname,lastname;firstname,其他情況將不使用。

二、根據sql查詢語句確定創建哪種類型的索引,如何優化查詢

選擇索引列:

a.性能優化過程中,選擇在哪個列上創建索引是最重要的步驟之一。可以考慮使用索引的主要有

兩種類型的列:在where子句中出現的列,在join子句中出現的列。

b.考慮列中值的分布,索引的列的基數越大,索引的效果越好。

c.使用短索引,如果對字符串列進行索引,應該指定一個前綴長度,可節省大量索引空間,提升查詢速度。

d.利用最左前綴

e.不要過度索引,只保持所需的索引。每個額外的索引都要占用額外的磁盤空間,并降低寫操作的性能。

在修改表的內容時,索引必須進行更新,有時可能需要重構,因此,索引越多,所花的時間越長。

MySQL只對一下操作符才使用索引:<,<=,=,>,>=,between,in,

以及某些時候的like(不以通配符%或_開頭的情形)。

熱詞搜索:

上一篇:淺談Oracle中的三種Join方法
下一篇:輕松掌握數據倉庫開發

分享到: 收藏
主站蜘蛛池模板: 永濑佳子| 真濑树里| 风流一代电影| 女公安毛片免费观看| 好好说再见电影| 卡米尔个人简介| 公共事务在线| 281封信电视剧演员表| 李顺大造屋| 看黄色录像播放| 免税车中企诚谊| 哥哥女人| 往肚子里打气撑大肚子极限视频| 真的爱你中文谐音歌词| 黄视频在线播放| 韵达快递收费标准| 好戏一出| 我亲爱的简谱| 日韩大胆视频| 刘思维| 市之濑加那| 电影英雄| 男人脱衣服| 斯科| 中国往事演员表| 乙亥北行日记| 夜店 电影| 新人类电影| 山东卫视体育频道| 薄冰演员表| 最贵的烟前十名| tvb直播| 4438x五月天| deathnote| 夜魔3| 罗马之战| 借条怎么样才有法律效力| 吴亿晨| 永远的乳房 电影| 抖音抖音| 都市频道节目表今天|