[英]How to declare secondary or non-unique index in mysql?
似乎mysql只提供四種索引,分別是primary,unique,key,fulltext和spatial。 但我想知道如何聲明那些不是唯一但經常被索引的列的索引? 因為我的數據庫服務器遇到了瓶頸,我想為經常編入索引的列創建索引。
任何幫助,將不勝感激。 提前致謝。
請區分“密鑰”和“索引”。
前者是一個邏輯概念(限制,因此改變數據的含義),后者是物理的(不改變含義,但可以改變性能) 1 。
讓我們直截了當地了解基本概念:
不幸的是,MySQL已經將術語搞砸了:
例如,兩者......
CREATE TABLE T (
A INT PRIMARY KEY,
B INT
);
CREATE INDEX T_IE1 ON T (B);
...和...
CREATE TABLE T (
A INT KEY,
B INT,
KEY (B)
);
...意思相同:A上的主鍵(A上有唯一/聚簇索引)和B上的非唯一索引。
1獨特的指數在這里是一個古怪的東西 - 它跨越兩個世界一點點。 但讓我們再討論這個問題......
2例如,InnoDB將表格集中在主鍵上。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.