广西来宾一中
2011-07-20 11:18:24| 分类: Oracle | 标签:oracle 交集 并集 sql 爵士乐论文 |字号大中小 订阅
交集,intersect,取出同时包含PHP eAccelerator CentOS 三个tag的文章:
麻醉药品临床应用指导原则select b.* from tags a left join documents b on a.doc_id=b.doc_id where a.tag ='PHP'
intersect
select b.* from tags a left join documents b on a.doc_id=b.doc_id where a.tag ='eAccelerator'
intersect
select b.* from tags a left join documents b on a.doc_id=b.doc_id where a.tag ='CentOS'
马克思劳动价值论
并集,比交集简单了,用in就可以了
select b.* from tags a left join documents b on a.doc_id=b.doc_id
where a.tag
in ('PHP',
伊万格琳娜'eAccelerator',
'CentOS')
注: 废液焚烧炉两个表的字段结构,可以从左侧栏看出来,是通过doc_id来关联的这也很明显。需要注意的,取交集时三个子句的字段情况应该完全相同。为了看得更清楚,加一个“两个关键词取交集”的效果图:
并集的另一种实现:
select b.* from tags a left join documents b on a.doc_id=b.doc_id where a.tag ='PHP'
union
select b.* from tags a left join documents b on a.doc_id=b.doc_id where a.tag ='eAccelerator'
union
select b.* from tags a left join documents b on a.doc_id=b.doc_id where a.tag ='CentOS'