要提高查询速度,一般: 1.不需要删除的字段,建主键;有可能要被删除的字段,建索引。 2.假如一次提交5W个号码,每个都要和数据
要提高查询速度,一般:
1.不需要删除的字段,建主键;有可能要被删除的字段,建索引。
2.假如一次提交5W个号码,每个都要和数据库里90W号码进行比较5W个号码中哪些号码是90W号码中的。那么将90W号码建一个表,一个字段就是号码字段,然后把该字段设为主键即可。
update前100条为0,另外一个程序找状态为0的,要提高速度,要将这100条(所有条)的ID建索引。
3.不管对什么字段建的什么索引,该字段只有放在where条件中使用时,,索引才生效,假如放到not in或者其他条件中,索引无效。
另外,有个语句:
对于sql中红色字体:(mainid和sjtdid在这里的都是唯一的,但是在表中不一样,不知道怎么说,只想说where后的条件顺序不一样,速度不一样,对某些字段加索引,速度更快)
情况1.(此时mianid未建索引)
情况2.(此时mianid未建索引)
情况3.(对mainid建索引,mianid是另外一个表的id)
4.Oracle序列,类似sqlserver自增主键,是数字类型的。使用序列也可以加快查询速度。
---建序列:
CREATE SEQUENCE seq_mxid
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加,不循环
;
---使用序列