一个简单却难以写的语句..请大家帮忙一下:我从一个表里面查到了数据,然后根据查询出来的数据再和另外一个表比较.
select id,ChannelID,ClassID,Title
from PE_ZhuanRan a
where exists
(
select 1
from
(
select ChannelID,ClassID,Title,count(*) as csum
from PE_ZhuanRan
group by ChannelID,ClassID,Title
having count(*)>=2 and ChannelID='1035'
) b
where a.ChannelID = b.ChannelID and a.ClassID=b.ClassID and a.Title=b.Title
)
这个是查询出来之后的表(PE_Article)
ArtileID ChannelID Class Title
8588 1035 63 沃伦
11264 1035 63 沃伦
8613 1035 64 金冠
8613 1035 64 金冠
下面这个是另外一个表(PE_Class)
ClassID ClassName ChannelID
63 01类 1035
64 02类 1035
结果是:
ArtileID ChannelID ClassName Title
8588 1035 01类 沃伦
8613 1035 02类 金冠请问两个表怎么写了.我只是写了第一个表的查询..
我最后的分数了...
select id,ChannelID,ClassID,Title
from PE_ZhuanRan a
where exists
(
select 1
from
(
select ChannelID,ClassID,Title,count(*) as csum
from PE_ZhuanRan
group by ChannelID,ClassID,Title
having count(*)>=2 and ChannelID='1035'
) b
where a.ChannelID = b.ChannelID and a.ClassID=b.ClassID and a.Title=b.Title
)
这个是查询出来之后的表(PE_Article)
ArtileID ChannelID Class Title
8588 1035 63 沃伦
11264 1035 63 沃伦
8613 1035 64 金冠
8613 1035 64 金冠
下面这个是另外一个表(PE_Class)
ClassID ClassName ChannelID
63 01类 1035
64 02类 1035
结果是:
ArtileID ChannelID ClassName Title
8588 1035 01类 沃伦
8613 1035 02类 金冠请问两个表怎么写了.我只是写了第一个表的查询..
我最后的分数了...
select distinct a.ArtileID,a.ChannelID,b.ClassName , Title
from PE_Article a left outer join PE_Class b
on a.ChannelID =b.ChannelID and a.Class=b.ClassID如果相同的 ChannelID , Class, Title 只出一个ArtileID 小的话 建议在第一个查询里面解决,要不然 嵌套进来会很慢