急!!!怎样建立合理的索引?表中的所有字段都可能作为查询的条件,由用户自己选择查询的字段

beihua 2003-04-20 10:02:59
急!!!怎样建立合理的索引?表中的所有字段都可能作为查询的条件,由用户自己选择查询的字段
比如一个表有20多个字段: id,field1,field2,field3......field18,field19,field20......
其中id是主键是一个自增长字段,其实就是提供给用户自定义查询的功能
将这全部20多个字段联起来建一个联合索引好像不太好吧?
那对于这个表怎样建立一个合理的索引呢?
谢谢!
...全文
229 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
ekun008 2003-04-20
  • 打赏
  • 举报
回复
www.solarstones.com/wzq
caiyunxia 2003-04-20
  • 打赏
  • 举报
回复
楼上说的比较清楚
但有必要按任意字段做条件查询吗?
teaism 2003-04-20
  • 打赏
  • 举报
回复
上面的第5点就是说,
建索引除了按规则经验判断之外,也是个调试过程,要比较速度,然后决定是否建索引。
teaism 2003-04-20
  • 打赏
  • 举报
回复
呵呵,这是个大题目。
1.尽量少建索引。

2.对于如ID或常JION的不重复的列建clusted index

3.对于种类不多,如bit,type列不建索引,如建索引不会提高多少速度,但严重引响性能。

4.对于常在select ....内或where ....内的列建索引。且建索引的列长越小越好。

5.建索引,要对建索引前后性能做比较,然后决定是否保留索引,如果无多大效果 删了它。

对于你这个问题,我认为:对ID建clusted index,其它列剔除BIT,TYPE列常用的选几个长度较小的列建索引就行了。
beihua 2003-04-20
  • 打赏
  • 举报
回复
谢谢大家!
caiyunxia 2003-04-20
  • 打赏
  • 举报
回复
如果有100列,建100个索引吗
mjhnet 2003-04-20
  • 打赏
  • 举报
回复
把最常用的查询条件字段设置成索引字段,不宜太多。

查询分析器里有优化向导,可以去用用
iamltd 2003-04-20
  • 打赏
  • 举报
回复
呵呵。那倒是。
又要自定义又要效率,自己去用access吧。哈哈


要自定义只能把ID建索引,其他都不好建的
w_rose 2003-04-20
  • 打赏
  • 举报
回复
“现在不是流行自定义吗?”

你们如果设计出有价值的管理软件,用户还愿意自己去鼓捣那些花拳绣腿么?如果愿意,为什么不把SQL Server或者Access各它装一套,让它直接通过Access操作后台数据库,自己在Access里设计报表?
beihua 2003-04-20
  • 打赏
  • 举报
回复
让用户自己随意地选择查询的条件难道不好吗?
问题是系统的概要设计已经出来了,是我们经理设计的哟。
现在不是流行自定义吗?
请多指教!
^_^
w_rose 2003-04-20
  • 打赏
  • 举报
回复
真正“万能”的流程,来自于对于成功的流程的继承,而不是要求用户在毫无经验的情况下自己拼凑答案。
w_rose 2003-04-20
  • 打赏
  • 举报
回复
没有一种价值建立在“万能”之上。越是万能的东西,越说明设计者不懂得什么是关键的价值。

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧