~~头发薍ㄋ。 发表于 2012-4-8 15:30:05

Sql语句求帮助!!

本帖最后由 ~~头发薍ㄋ。 于 2012-4-8 15:43 编辑

现在有两张表,分别是news表和class表:

news表中有三个字段如下
----------------------------------------------
id   |   title|content
----------------------------------------------
title表示新闻的标题
content表示新闻的内容

class表中有三个字段如下
----------------------------------------------
newsid   |   className|classResult
----------------------------------------------
className表示分类器的名称
classResult表示分类器的结果

目的是希望把新闻的所有属性都放在class表中。

举个例子:
新闻id号为1的这条新闻,新闻类别 为国际新闻,那在class表中则插入
1,"新闻类别","国际新闻"
同时,新闻id号为1的这条新闻,新闻来源 为人民网,那在class表中则插入
1,"新闻来源","人民网"
也可以再加入其他属性进去。

那么我选择的时候,如果希望能够得到所有 新闻类别 为国际新闻 ,新闻来源 为人民网的所有新闻记录。
请教各位,这样的语句怎么写?

kider 发表于 2012-4-17 16:25:20

数据插的不够科学...

coky 发表于 2012-4-26 16:30:06

恩,一楼说的确实。抛砖引玉下,这个查询估计老慢了。
select * from news where id in (
select id from class as a and class as b where a. classname='新闻类别' and a.classResult='国际新闻' and b.classname='新闻来源'and b.classResult='人民网' and a.id=b.id group by id)
我记得and的话会先判断前面的,过滤下到时候链接的话行数会小点,没测试过。
页: [1]
查看完整版本: Sql语句求帮助!!