社区
MS-SQL Server
帖子详情
索引的问题,如果有三个字段: a,b,c 需要几种排序方式:a/b/c a/c/b b/a/c b/c/a c/a/b c/b/a,那么是否一定要建这么多的索引?
wxbfly
2003-11-13 03:28:54
假如数据量很大。
比较困惑,请各位指点,是针对每一个字段只建一个索引还是建六个复合索引?
...全文
216
14
打赏
收藏
索引的问题,如果有三个字段: a,b,c 需要几种排序方式:a/b/c a/c/b b/a/c b/c/a c/a/b c/b/a,那么是否一定要建这么多的索引?
假如数据量很大。 比较困惑,请各位指点,是针对每一个字段只建一个索引还是建六个复合索引?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Rotaxe
2003-11-13
打赏
举报
回复
你可以用index tuning wizard试一下
Rotaxe
2003-11-13
打赏
举报
回复
看你系统的要求,是分析为主还是事务处理为主。除了order by
select 和 where 里有哪些字段呢?
如果select * from table order by a,b,c 是会用表扫描,不会用你的索引的。
friendliu
2003-11-13
打赏
举报
回复
帮你顶
照楼主所说好像必须建好多索引才好。但这种情况下的组合太多了
个人认为不太好
还是给每个字段分别建索引好
wxbfly
2003-11-13
打赏
举报
回复
再顶
wxbfly
2003-11-13
打赏
举报
回复
还请各位继续指点,以解我疑惑。
wxbfly
2003-11-13
打赏
举报
回复
to pengdali(大力 V3.0) :
有必要的,因为我们的系统有将近上百个报表,给用户提供了多种查询、打印方式。如上面我所说的发票表,其中参与索引的字段有 客户、供应商、货品、日期、发票号等。那么就可能查某个客户购买了哪个供应商的哪些货品,或者查供应商的哪个货品在什么日期卖给了什么客户,以及查属于某个客户或某个供应商的发票等。
感谢您的帮忙,我想除了建这么多的索引之外,就没有其它的办法吗?
pengdali
2003-11-13
打赏
举报
回复
不会综合,符合索引是对的。但你建这么多索引有必要吗
wxbfly
2003-11-13
打赏
举报
回复
主要是为了排序,如果只建了一个索引:a/b/c,那么在要求order by b,a,c时是否会影响效率呢?这些索引主要是用在报表输出时,客户对时间的要求也是比较高的
to zjcxc:
如果只为每一个字段建立一个索引,即建立三个索引:
1、a 2、 b 3、c
这样在order by a,b,c或其它顺序时,sql server会把三个索引综合起来使用吗?如何综合,效率如何?
zjcxc
元老
2003-11-13
打赏
举报
回复
我的意见
每个字段单独建立一个索引就行了.
zjcxc
元老
2003-11-13
打赏
举报
回复
为什么要建那么多索引?
wxbfly
2003-11-13
打赏
举报
回复
我以前所在的公司就是建立这么多的索引,要求有几种排列顺序,那么就建几个对应字段顺序的索引。我不知道是否还有其它的解决办法,直觉这样做不会是正确的。
wxbfly
2003-11-13
打赏
举报
回复
多谢各位。
这些我知道,但系统要求有不同的排序方式。
如order by a,b,c 或 order by a,c,b 或 order by b,a,c ............
那我该怎么办?是不是该建立如下的索引:
索引1: a,b,c
索引2: a,c,b
索引3: b,a,c
.
.
.
请各位指点。这种情况主要发生在比较重要的表上,如发票,可能有客户、日期、货物、发票号、供应商,等等
pengdali
2003-11-13
打赏
举报
回复
索引多当然好,但会影响update,而update也会影响索引
txlicenhe
2003-11-13
打赏
举报
回复
建这么多还了得?
三个字段一起建一个复合索引就够用了。
wheel-0.9.6-py27-none-any.whl
Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。
基于ssm布卡维纳红酒网页平台.zip
基于ssm布卡维纳红酒网页平台.zip
基于SSM的旅游管理系统.zip
基于SSM的旅游管理系统.zip
菜鸟驿站(诚毅小高层对面厂房内) 2.m4a
菜鸟驿站(诚毅小高层对面厂房内) 2.m4a
tensorflow_ranking-0.4.0-py2.py3-none-any.whl
算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。
MS-SQL Server
34,575
社区成员
254,583
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章