日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

数据库SQL索引

發布時間:2023/12/3 数据库 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据库SQL索引 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、索引的意義

表中創建索引,以便更加快速高效地查詢數據。

用戶無法看到索引,它們只能被用來加速搜索/查詢。

注釋:更新一個包含索引的表需要比更新一個沒有索引的表花費更多的時間,這是由于索引本身也需要更新。因此,理想的做法是僅僅在常常被搜索的列(以及表)上面創建索引。

?

二、索引創建與刪除、查看

(1)創建索引

1、在表上創建一個簡單的索引。允許使用重復的值。索引不止一個列,可以在括號中列出這些列的名稱,用逗號隔開。

CREATE INDEX index_name?ON table_name (column_name1,..,column_nameN)

?

2、在表上創建一個唯一的索引。不允許使用重復的值。唯一的索引意味著兩個行不能擁有相同的索引值。

CREATE UNIQUE INDEX index_name?ON table_name (column_name1,..,column_nameN)

?

3、在創建表時創建索引

CREATE TABLE ?table_name (

? ? ?...,

? ? index ?index_name (column_name[(length)])

);

4、修改表時創建索引

ALTER TABLE table_name ADD UNIQUE index_name (column_list);

?

(2)刪除索引

DROP INDEX [index_name] ON table_name;

?

(3)查看索引

SHOW INDEX FROM?table_name;

?

三、查詢不走索引情況

近期筆試兩次遇到了回答索引不使用的情況

(1)建立組合索引,但查詢謂詞并未使用組合索引的第一列,此處有一個INDEX SKIP SCAN概念

(2)索引列可能包含空值

(3)索引列上有函數操作或者運算操作,導致不走索引

(4)索引不適用于隱式轉換的情況

(5)負向條件查詢

? ? ? ? !=或者<>(不等于),? not in , not exist,可能導致不走索引,也可能走 INDEX FAST FULL SCAN

(6)like '%liu' 百分號在前

?

?

總結

以上是生活随笔為你收集整理的数据库SQL索引的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。