数据库是sql server2008版的 查询一个表示,出来的数据有点慢,不过其...
发布网友
发布时间:2022-04-25 19:18
我来回答
共3个回答
热心网友
时间:2022-04-15 01:42
查询慢, 可能涉及很多原因.
是 单表查询? 还是多表查询?
这个表数据量有多少? 这个表会不会 一直有别的程序,向这个表插入数据的?
如果是这种情况下, 可能是别的程序插入数据的时候,临时锁定了这个表, 导致查询慢。
可以使用 with(nolock) 或者 WITH (readpast) 看看, 有没有改善。
查询条件是什么? 也就是 WHERE 是什么?
以及 SELECT 的列多不多? 是 SELECT * 还是 仅仅 SELECT 几个固定的列?
如果 WHERE 条件固定, 而且每次查询的行数不多, 那么可以尝试创建一个索引。
如果 SELECT 的列也不多, 但是不包含索引列, 那么可以在创建索引的时候, 加 INCLUDE 查询的列。追问他是查询工作量的 ,需要用到函数,这个如何创建索引,请指教,谢谢!
追答如果是用到函数的话, 好像 SQL Server 2008 不支持 基于函数的索引。
1> CREATE INDEX idx_testMain ON test_Main( LOWER( value ));
2> go
消息 102,级别 15,状态 1,服务器 EDWARDPC\SQLEXPRESS,第 1 行
'(' 附近有语法错误。
热心网友
时间:2022-04-15 03:00
那肯定是这张表的数据过大或者没有建立索引,又或者索引建立的不合适,你用一些数据库管理的语句看下这张表的基本情况什么的吧。
热心网友
时间:2022-04-15 04:35
增 加 索 引