SqlServer 数据库 索引的问题

  主键是聚集索引,其他的都是非聚集索引(升序)。为什么数据只是按照username排序。如果这样,我们在查询的时候又怎么能够来提高速率呢?

  如果有对每个字段都排序的话,怎么办呢?请尽可能的讲详细点,先谢谢!

  问题补充:索引建在标识符上是浪费吧,建在主键也是?,如果不在主键建聚集索引,那么岂不是不能设置主键(认为聚集索引,而且不能删的),我很糊涂,能帮我解释一下吗?

以下为回复内容

declare @d datetimeset @d=getdate()select top 10 * from tableName where 1=1order by Tst_Id desc,Tst_username asc,Tst_D_CreateTime desc,Tst_Count_N descselect [语句执行花费时间(毫秒)]=datediff(ms,@d,getdate())

你可以用sql查询优化分析器来进行调试

更详细的请看 http://bbs.liehuo.net/viewthread.PHP?tid=4812&extra=page%3D1

对补充的回复

索引建在标识列究竟是不是浪费,跟表结构、记录数量、使用环境都有关系。你可以做几次测试,建立适合自己的索引

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...