麻辣堂|资源主站|开发论坛|在线手册
首页 Apache Linux Java MySQL 注册帮助 
PHP项目开发组是PHP开发资源网于2007组年建成立的项目开发团队,目前核心开发成员有27人, 项目协作成员8名.下设7个开发组,主要承接大/中型网站项目开发任务。

    由于开发任务较多,人员比较紧张,现面向社会招聘全职或者兼职开发人员,不管你是在校大学生,还是全职开发人员,以及SOHO都可以联系本站,我们可以长期合作,并为您带来丰厚的报酬。
  您现在的位置:PHP开发资源网 > 麻辣堂 > 详细资料
待解决
大家帮我看看这个mysql索引创建的问题
悬赏分:20 - 2007年08月17日

表字段如下,全是INT,省略了无关字段:
id
site
status
category
bool1
bool2
bool3
bool4

后4个是bool值,非0即1。

id 是个PRIMARY, 因为要和其他表外连接。现在考虑给其他字段创索引,但因查询条件不同,想不出怎么才能建立适合所有查询的索引,我要进行的查询包括:

1. 选出符合site和status的记录(所谓符合site和status即SELECT id FROM table WHERE site=xxx AND status=xxx)

2. 选出符合status,bool1,category的记录,或者不考虑category,只选出符合status,bool1的记录

3. 选出符合status,bool2,category的记录,或者不考虑category,只选出符合status,bool2的记录

4. 选出符合status,bool3,category的记录,或者不考虑category,只选出符合status,bool3的记录

5. 选出符合status,bool4,category的记录,或者不考虑category,只选出符合status,bool4的记录

我该如何建立索引,才能兼顾这5中查询?mysql要求每个字段只能出现在一个索引里,因此不可能建立5个这样的索引:
(site, status)
(status,bool1,category)
(status,bool2,category)
(status,bool3,category)
(status,bool4,category)

有没有解决办法?

提问者:concorde   08-17 17:05
答复
路过。。。顺便帮顶:)
回答者:玉米づ冰冻可乐 - 瓦岗村民 8-22 09:10
我也来回答:
不管你有没有帮助我们,瓦岗寨8万村民将感谢你。。。。。

为防止灌水,您需要计算一道数学题: 答案:
40 + 98 = ? 请将计算结果填在上面

 
[]
©2007 PhpRes.COM