sql创建索引的命令

sql创建索引的命令,第1张

1添加PRIMARY KEY(主键索引

mysql>ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` )

2添加UNIQUE(唯一索引)

mysql>ALTER TABLE `table_name` ADD UNIQUE (

`column`

)

3添加INDEX(普通索引)

mysql>ALTER TABLE `table_name` ADD INDEX index_name ( `column` )

4添加FULLTEXT(全文索引)

mysql>ALTER TABLE `table_name` ADD FULLTEXT ( `column`)

5添加多列索引

mysql>ALTER TABLE `table_name` ADD INDEX index_name ( `column1`, `column2`, `column3` )

SQL语句:

CREATE INDEX indexname

ON Student(name ASC)

注释:

# indexname是索引的名字,你可以换成容易记忆容易理解的名字;

# Student 是表名,name 是姓名的字段名;

# ASC 升序,DESC 降序。

一、SQL创建索引的目的如下:

1、通过唯一性索引(unique)可确保数据的唯一性;

2、加快数据的检索速度;

3、加快表之间的连接;

4、减少分组和排序时间;

5、使用优化隐藏器提高系统性能。

二、创建SQL索引的语法:

CREATE[UNIQUE][CLUSTERED|](索引类型)INDEX

扩展资料:

索引的类别介绍:

1、唯一索引:

唯一索引是不允许其中任何两行具有相同索引值的索引。当现有数据中存在重复的键值时,大多数数据库不允许将新创建的唯一索引与表一起保存。数据库还可能防止添加将在表中创建重复键值的新数据。

2、主键索引:

数据库表经常有一列或多列组合,其值唯一标识表中的每一行。该列称为表的主键。在数据库关系图中为表定义主键将自动创建主键索引,主键索引是唯一索引的特定类型。该索引要求主键中的每个值都唯一。当在查询中使用主键索引时,它还允许对数据的快速访问。

应该建索引的字段:1经常作为查询条件的字段2外键3经常需要排序的字段4分组排序的字段

应该少建或者不建索引的字段有:1表记录太少,2经常需要插入,删除,修改的表,3表中数据重复且分布平均的字段

一些SQL的写法会限制索引的使用:1where子句中如果使用in、or、like、!= >,均会导致索引不能正常使用,将">"换成">and=chr(0)";2使用函数时,该列就不能使用索引。3比较不匹配数据类型时,该索引将会被忽略。

一些SQL语句优化的写法:1如果from是双表的查询时,大表放在前面,小表放在后面(基础表)。最后面的表是基础表。(只在基于规则的优化器中有效)2如果三表查询时,选择交叉表(intersection table)作为基础表(只在基于规则的优化器中有效)3写where条件时,有索引字段的判断在前,其它字段的判断在后;如果where条件中用到复合索引,按照索引列在复合索引中出现的顺序来依次写where条件;4查询数量较大时,使用表连接代替IN,EXISTS,NOT IN,NOT EXISTS等。5ORACLE采用自下而上的顺序解析WHERE子句,那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾

以上就是关于sql创建索引的命令全部的内容,包括:sql创建索引的命令、数据库创建索引,为学生表student创建姓名索引,按升序排列、SQL创建索引的目的是什么(sql建立索引有什么用)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9446495.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存