MariaDB教程

MariaDB 自身交叉查询

INTERSECT运算符用于返回2个或更多表的交集。如果两个表中都存在一条记录,它将被包含在INTERSECT结果中。否则,将在INTERSECT结果中将其省略。
语法:
SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions]
INTERSECT
SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions];
图像表示
MariaDB Intersect运算符1
注意: MariaDB不支持INTERSECT运算符,但是通过使用IN运算符模拟INTERSECT查询,您可以看到相同的内容,如下所示:

使用INTERSECT运算符返回单个字段

以下是INTERSECT运算符的常规查询,但在MariaDB中不会被支持。
SELECT student_name
FROM Student
INTERSECT
SELECT student_name
FROM Students;
使用以下命令:
SELECT Students.student_name
FROM Students
WHERE Students.student_name IN (SELECT Student.student_name FROM Student);
输出:
MariaDB Intersect运算符2
它仅显示两个表"学生"和"学生"。

带有WHERE子句的INTERSECT运算符

以下是INTERSECT运算符的常规查询,但在MariaDB中不会被支持。
SELECT student_name
FROM Student
INTERSECT
SELECT student_name
FROM Students, 
WHERE salary > 1500;
使用以下语法:
SELECT Students.student_name
FROM Students
WHERE Students.student_id < 10
AND Students.student_id IN
(SELECT Student.student_id
FROM Student
WHERE Student.salary > 1500);
输出:
MariaDB相交运算符3
注意: 您还可以对多个表达式使用INTERSECT运算符。

昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4