MySQL 8.0.31 新增支持SQL标准中的交集(INTERSECT)和差集(EXCEPT)表操作符
在MySQL 8.0.31之前,MySQL不支持SQL标准中的INTERSECT和EXCEPT操作。从MySQL 8.0.31开始,这两个操作被正式引入。
以下是如何使用INTERSECT和EXCEPT的示例:
-- 创建示例表
CREATE TABLE t1 (id INT);
CREATE TABLE t2 (id INT);
-- 插入数据
INSERT INTO t1 (id) VALUES (1), (2), (3);
INSERT INTO t2 (id) VALUES (2), (3), (4);
-- 使用INTERSECT查找两个表中都有的数据
SELECT id FROM t1 INTERSECT SELECT id FROM t2;
-- 使用EXCEPT查找第一个表有而第二个表没有的数据
SELECT id FROM t1 EXCEPT SELECT id FROM t2;
在这个例子中,第一个查询将返回共同拥有的数据(2和3),第二个查询将返回在t1
中但不在t2
中的数据(1)。
评论已关闭