sql:查询时快时慢?

2025-03-23 23:15:55
推荐回答(4个)
回答1:

如果说是sql server 的话有这种情况,字段越多,查询可能越慢,并且如果你的字段中有比如text,ntext之类的话会有这种情况;
还有,你的这种写法可能也造成执行慢,SQL在执行时有这样一个规则,不知道你是否了解,在执行时,SQL 后台会先执行编译,找到一条最佳查询路径,也就是最快的查询路径,再真正执行查询;这个编译是需要时间的,如果条件复杂,或者由其它的变化而来的条件,会存在编译的查找最佳路径的时间问题;

数据库的字段越多,会有可能越慢,不管是否是空表,至于什么原因,好像MICROSOFT没有说法。

另外1=1这种恒等条件最好也不要加。

回答2:

很正常啊,加了限制条件的sql语句在搜索时,sqlserver会自动根据限制条件把符合限制条件的记录组成个临时表,然后再根据后面的条件在这个临时表里查询,这样速度肯定会快.
而且,like方法会引起全表扫描,而且无法使用索引,最好少用.
查询请限制输出,才能优化sql语句.

回答3:

你把1=1这个条件去掉试试

回答4:

因为加了条件后所选择出来的数据会少很多