在實際應用索引時,在建表的同時建立索引,即在建表的sql中新增建立索引的sql,應用例項如下:
create table tbl_camera_info (`cameraid` varchar(
64) not null comment '
鏡頭唯一編號,統一監控平台',
`cameraname` varchar(
128) not null comment '
鏡頭名稱',
`clientid` varchar(
64) not null comment '
所屬客戶編號',
`clientname` varchar(
128) default null comment '
所屬客戶名稱',
`lasttime` datetime not null comment
'最後修改時間',
primary key (`cameraid`,`clientid`)
)engine innodb default charset=utf8 comment='
鏡頭資訊表
';
以上建立的乙個cameraid和clientid的主鍵唯一復合索引。
create table `report_info` (`id`
int(11) not null auto_increment comment '
自增序列',
`cameraname` varchar(
256) not null comment '
監控點名稱',
`clientname` varchar(
256) not null comment '
客戶名稱',
`platid` varchar(
2) not null comment '
平台id',
`createtime` datetime not null comment
'開戶時間',
`lasttime` datetime not null comment
'最後一次更新時間',
primary key (`id`),
index report_camera_platid(platid asc),
index report_camera_createtime(createtime desc)
) engine=innodb default charset=utf8 comment ='
上報資訊表
';
以上為表建立的為id的主鍵索引,普通索引,並且為普通索引新增了排序的種類。
物理排序是改變記錄存放的物理位置,而索引排序相當於是為一本書增加了
乙個詳細的目錄(這個目錄可以是按所需的要求來決定先後順序的,它記錄的不是
庫中記錄的實際內容,而只是各記錄在庫中的位置。所以,建立索引所需的空間花費
比物理排序要小得多,還有利於防止產生資料冗餘以及由此產生的資料更新時容易
造成的資料的不一致性。
普通索引唯一索引的區別
1 查詢 唯一索引查到滿足條件的資料後直接返回 普通索引查到滿足條件的資料後會繼續匹配下一行是否滿足條件 2 寫唯一索引 需要判斷是否重複,需要將對應的頁從磁碟載入的記憶體中 普通索引 普通索引使用change buffer 占用buffer pool的空間 直接將更新寫入到buffer中,不用讀盤...
mysql復合索引 普通索引總結
mysql復合索引 普通索引總結 對於復合索引 mysql從左到右的使用索引中的字段,乙個查詢可以只使用索引中的一部份,但只能是最左側部分。例如索引是key index a,b,c 可以支援a a,b a,b,c 3種組合進行查詢,但不支援 b,c進行查詢 當最左側欄位是常量引用時,索引就十分有效。...
普通索引 唯一索引 區別
分析唯一索引和普通索引在查詢語句和更新語句中的效能影響。假設執行以下語句 select id from t where k 5這個查詢語句在索引樹上查詢的過程,先是通過 b 樹從樹根開始,按層搜尋到葉子節點,然後可以在資料頁內部通過二分法來定位記錄。以上看起來唯一索引比普通索引少了一步判斷,其實帶來...