多个集合的交集sql(多个集合的交集运算)

http://www.itjxue.com  2023-02-16 16:19  来源:未知  点击次数: 

SQL集合运算:差集、交集、并集

SQL集合运算:差集、交集、并集

2011年03月30日 15:41:00

阅读数:15446

1、差集( except )

select a from t_a

except

select a from t_b

-- 也可写作:

select a from t_a where a not in (select a from t_b)

-- 多个字段时:

select a,b from t_a

except

select a,b from t_b

-- 多字段的查集也可写成:

select a,b from t_a where (a,b) not in (select a,b from t_b)

2、交集(?intersect )

select a from t_a

intersect

select a from t_b

-- 也可写作:

?? select a from t_a where a in (select a from t_b)

3、并集(?union )

select a from t_a

union distinct

select a from t_b

如何用sql表示两个集合的交集

用where条件呗,写清楚条件,出来的不就是同时满足两边的结果了!

plsql里面两个集合的合集,差集,交集怎么写

交集是两个集合的公共元素,即两个方程的公共解;

并集是两个集合的元素的总个数(相同的元素只写一次);

差集:如果两个集合有交集,则大集元素中所有不属于小集合的元素的集合是差集,如果没有交集(空集),则A-B=A, B-A=B

求多个表交集的SQL语句是什么呀???

使用 EXISTS 和 NOT EXISTS 查找交集与差集

使用 EXISTS 和 NOT EXISTS 引入的子查询可用于两种集合原理的操作:交集与差集。两个集合的交集包含同时属于两个原集合的所有元素。差集包含只属于两个集合中的第一个集合的元素。

city 列中 authors 和 publishers 的交集是作者和出版商共同居住的城市的集合。

USE pubs

SELECT DISTINCT city

FROM authors

WHERE EXISTS

(SELECT *

FROM publishers

WHERE authors.city = publishers.city)

下面是结果集:

city

--------

Berkeley

(1 row(s) affected)

当然,该查询可以写成一个简单的联接。

USE pubs

SELECT DISTINCT authors.city

FROM authors INNER JOIN publishers

ON authors.city = publishers.city

city 列中 authors 和 publishers 的差集是作者所居住的、但没有出版商居住的所有城市的集合,也就是除 Berkeley 以外的所有城市。

USE pubs

SELECT DISTINCT city

FROM authors

WHERE NOT EXISTS

(SELECT *

FROM publishers

WHERE authors.city = publishers.city)

该查询也可以写成:

USE pubs

SELECT DISTINCT city

FROM authors

WHERE city NOT IN

(SELECT city

FROM publishers)

(责任编辑:IT教学网)

更多

相关思科认证文章

推荐思科认证文章