概述
1、索引查询
------TABLE_SCHEMA 库名;TABLE 表名
------AND UPPER(INDEX_NAME) != 'PRIMARY' 只查询索引,不需要主键
SELECT
CONCAT('ALTER TABLE `',TABLE_NAME,'` ', 'ADD ',
IF(NON_UNIQUE = 1,
CASE UPPER(INDEX_TYPE)
WHEN 'FULLTEXT' THEN 'FULLTEXT INDEX'
WHEN 'SPATIAL' THEN 'SPATIAL INDEX'
ELSE CONCAT('INDEX `',
INDEX_NAME,
'` USING ',
INDEX_TYPE
)
END,
IF(UPPER(INDEX_NAME) = 'PRIMARY',
CONCAT('PRIMARY KEY USING ',
INDEX_TYPE
),
CONCAT('UNIQUE INDEX `',
INDEX_NAME,
'` USING ',
INDEX_TYPE
)
)
),'(', GROUP_CONCAT(DISTINCT CONCAT('`', COLUMN_NAME, '`') ORDER BY SEQ_IN_INDEX ASC SEPARATOR ', '), ');') AS 'Show_Add_Indexes'
FROM information_schema.STATISTICS
WHERE TABLE_SCHEMA = 'test' and TABLE ='test_table'
AND UPPER(INDEX_NAME) != 'PRIMARY'
GROUP BY TABLE_NAME, INDEX_NAME
ORDER BY TABLE_NAME ASC, INDEX_NAME ASC;
2、索引删除
alter table table_name drop index index_name;
3、创建索引
alter table table_name add index_name using btree('column_name',...,'column_name');
create unique index index_name on table_name('column_name');
两者区别:
(1)add index_name 支持一次多个索引创建alter table table_name add index_name using btree('column_name',...,'column_name'),add index_name using btree('column_name',...,'column_name')
(2)add index_name 可以创建 PRIMARY KEY
(3)create index 创建时必须制定index_name,alter 可以使用默认名
转载于:https://www.cnblogs.com/wwhljn/p/10174157.html
最后
以上就是合适时光为你收集整理的mysql 索引查询 、创建 create index 与 add index 的区别的全部内容,希望文章能够帮你解决mysql 索引查询 、创建 create index 与 add index 的区别所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复