-- MySQL中四種方式給字段添加索引
1)
# 添加主鍵
# ALTER TABLE tbl_name ADD PRIMARY KEY (col_list);
# -- // 該語句添加一個主鍵,這意味着索引值必須是唯一的,且不能為NULL。
# 添加唯一索引 -- UNIQUE 后面不用跟INDEX
# ALTER TABLE tbl_name ADD UNIQUE index_name (col_list);
# // 這條語句創建索引的值必須是唯一的。
# 添加普通索引
# ALTER TABLE tbl_name ADD INDEX index_name (col_list);
# // 添加普通索引,索引值可出現多次。
# 添加全文索引
# ALTER TABLE tbl_name ADD FULLTEXT index_name (col_list);
# // 該語句指定了索引為 FULLTEXT ,用於全文索引。
-- PS: 附贈刪除索引的語法:
DROP INDEX index_name ON tbl_name;
-- // 或者
ALTER TABLE tbl_name DROP INDEX index_name;
ALTER TABLE tbl_name DROP PRIMARY KEY;
2)
CREATE INDEX index_name ON table_name (column_name);
CREATE UNIQUE INDEX index_name ON table_name (column_name);
索引查詢
sqlite使用索引查詢的語法為
1
2
3
4
|
SELECT|DELETE|UPDATE column1, column2...
INDEXED BY (index_name)
table_name
WHERE (CONDITION);
|
示例:SELECT * FROM salaries INDEXED BY idx_emp_no WHERE emp_no =
10005
mysql 使用強制索引 force select * from salaries force index(idx_emp_no) where emp_no = 10005;
強制索引
1
|
SELECT * FROM salaries INDEXED BY idx_emp_no WHERE emp_no =
10005
|
1
|
SELECT * FROM salaries FORCE INDEX (idx_emp_no) WHERE emp_no =
10005
|