sql如何建立降序索引 和删除索引
建立降序索引语法:
create index 索引名 on 表名(字段名 desc);
注:desc换成asc则是升序索引。
删除索引语法:
drop index 索引名;
扩展资料:
索引的使用及注意事项
尽量避免这些不走索引的sql:
1、SELECT `sname` FROM `stu` WHERE `age`+10=30;不会使用索引,因为所有索引列参与了计算。
2、SELECT `sname` FROM `stu` WHERE LEFT(`date`,4) 《1990; 不会使用索引,因为使用了函数运算,原理与上面相同。
3、SELECT * FROM `houdunwang` WHERE `uname` LIKE’后盾%’ 走索引。
4、SELECT * FROM `houdunwang` WHERE `uname` LIKE “%后盾%“不走索引。-删除索引的sql语句
5、字符串与数字比较不使用索引;
CREATE TABLE `a` (`a` char(10));
EXPLAIN SELECT * FROM `a` WHERE `a`=“1“走索引。
EXPLAIN SELECT * FROM `a` WHERE `a`=1 不走索引
参考资料来源:索引-百度百科
怎样为视图建立索引
必须使用 SCHEMABINDING 定义视图才能在视图上创建索引。视图定义也必须具有确定性。如果选择列表中的所有表达式、WHERE 和 GROUP BY 子句都具有确定性,则视图也具有确定性。而且,所有键列必须是精确的。只有视图的非键列可能包含浮点表达式(使用 float 数据类型的表达式),而且 float 表达式不能在视图定义的其它任何位置使用。
若要在确定性视图中查找列,请使用 COLUMNPROPERTY 函数(IsDeterministic 属性)。该函数的 IsPrecise 属性可用来确定键列是否精确。
必须先为视图创建唯一的聚集索引,才能为该视图创建非聚集索引。
指定 SCHEMABINDING 时,select_statement 必须包含所引用的表、视图或用户定义函数的两部分名称 (owner.object)。
不能除去参与用架构绑定子句创建的视图中的表或视图,除非该视图已被除去或更改,不再具有架构绑定。否则,SQL Server 会产生错误。另外,如果对参与具有架构绑定的视图的表执行 ALTER TABLE 语句,而这些语句又会影响该架构绑定视图的定义,则这些语句将会失败!
-索引
删除索引的sql语句是(
先选择该索引。右键看看哪些表对该索引有依赖。解除依赖。再用Drop Index 索引名 删除
alter table tableName drop index indexName
用delete 语句可以删去,但是在栓去之前的解除表之间的关系。