中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

mysql索引的實現方法

發布時間:2020-09-24 12:42:08 來源:億速云 閱讀:217 作者:小新 欄目:MySQL數據庫

mysql索引的實現方法?這個問題可能是我們日常學習或工作經常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家帶來的參考內容,讓我們一起來看看吧!

MySQL索引的概念

索引是一種特殊的文件(InnoDB數據表上的索引是表空間的一個組成部分),它們包含著對數據表里所有記錄的引用指針。更通俗的說,數據庫索引好比是一本書前面的目錄,能加快數據庫的查詢速度。上述SQL語句,在沒有索引的情況下,數據庫會遍歷全部200條數據后選擇符合條件的;而有了相應的索引之后,數據庫會直接在索引中查找符合條件的選項。如果我們把SQL語句換成“SELECT * FROM article WHERE id=2000000”,那么你是希望數據庫按照順序讀取完200萬行數據以后給你結果還是直接在索引中定位呢?(注:一般 數據庫默認都會為主鍵生成索引)。

mysql索引的實現方法

索引分為聚簇索引和非聚簇索引兩種,聚簇索引是按照數據存放的物理位置為順序的,而非聚簇索引就不一樣了;聚簇索引能提高多行檢索的速度,而非聚簇索引對于單行的檢索很快。

MySQL索引的類型

1. 普通索引

這是最基本的索引,它沒有任何限制,比如上文中為title字段創建的索引就是一個普通索引,MyIASM中默認的BTREE類型的索引,也是 我們大多數情況下用到的索引。

–直接創建索引
CREATE INDEX index_name ON table(column(length))
–修改表結構的方式添加索引
ALTER TABLE table_name ADD INDEX index_name ON (column(length))
–創建表的時候同時創建索引
CREATE TABLE `table` (
`id` int(11) NOT NULL AUTO_INCREMENT ,
`title` char(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`content` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,
`time` int(10) NULL DEFAULT NULL ,
PRIMARY KEY (`id`),
INDEX index_name (title(length))
)
–刪除索引
DROP INDEX index_name ON table

2. 唯一索引

與普通索引類似,不同的就是:索引列的值必須唯一,但允許有空值(注意和主鍵不同)。如果是組合索引,則列值的組合必須唯一,創建方法和普通索引類似。

–創建唯一索引
CREATE UNIQUE INDEX indexName ON table(column(length))
–修改表結構
ALTER TABLE table_name ADD UNIQUE indexName ON (column(length))
–創建表的時候直接指定
CREATE TABLE `table` (
`id` int(11) NOT NULL AUTO_INCREMENT ,
`title` char(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`content` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,
`time` int(10) NULL DEFAULT NULL ,
PRIMARY KEY (`id`),
UNIQUE indexName (title(length))

感謝各位的閱讀!看完上述內容,你們對mysql索引的實現方法大概了解了嗎?希望文章內容對大家有所幫助。如果想了解更多相關文章內容,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

织金县| 田林县| 宽城| 邵阳市| 浙江省| 东丰县| 临西县| 阿合奇县| 永清县| 仙桃市| 永善县| 邯郸市| 招远市| 甘孜县| 伊吾县| 南皮县| 巴塘县| 贡觉县| 安多县| 陕西省| 加查县| 云和县| 永靖县| 大宁县| 台北县| 陕西省| 永定县| 长宁区| 潞城市| 武山县| 仪陇县| 寿宁县| 堆龙德庆县| 泰和县| 东乡| 临朐县| 沭阳县| 灵丘县| 大冶市| 嘉峪关市| 颍上县|