显示两个表或查询之间不同的行
结构化查询语言(SQL) 是一种通用的数据库语言,用于从关系数据库(如 MySQL、Oracle 等)中构建、管理和检索数据。 这里我们将看到如何获取两个表或查询之间不同的行。
在这里,我们将首先创建一个名为“geeksdb”的数据库,然后在该数据库中创建两个表“Geektab1”和“GeekTab2”。之后,我们将对这些表执行查询。
创建数据库:
create geeksdb;
使用该数据库:
use geeksdb;
在数据库中创建表 geek tab 1:
Create Table Geektab1 (
ID int,
NAME varchar (25) );
在表格中添加数值:
INSERT INTO Geektab1 VALUES (1, 'Neha');
INSERT INTO Geektab1 VALUES (2, 'Ankit');
INSERT INTO Geektab1 VALUES (3, 'Khushi');
INSERT INTO Geektab1 VALUES (4, 'Mahesh');
这是我们表里面的数据:
SELECT * FROM DEPARTMENT;
在数据库中创建表 geek tab 2:
Create Table Geektab2 (
ID int,
NAME varchar (25) );
在表格中添加数值:
INSERT INTO Geektab1 VALUES (1, 'Neha');
INSERT INTO Geektab1 VALUES (2, 'Ankit');
INSERT INTO Geektab1 VALUES (3, 'Khushi');
这是我们表里面的数据:
SELECT * FROM DEPARTMENT;
我们可以在 SQL 中使用以下关键字来获取两个表之间不同的行:
- INTERSECT–将向我们显示这两个表共享了哪些行。
- EXCEPT–将向我们显示第一个表中不在第二个表中的所有行。
我们将看到这些表是否相似,或者使用这两个查询是否有任何变化。
语法(INTERSECT) :
SELECT * FROM table1
INTERSECT
SELECT * FROM table2 ;
示例:
SELECT * FROM Geektab1
EXCEPT
SELECT * FROM Geektab2 ;
输出:
T19T23】AnkitT27】3T33 | 身份证明 | 名字 | | --- | --- | | one | 停止 | | Two | | 库希 |语法(除外):
SELECT * FROM table1
EXCEPT
SELECT * FROM table2 ;
示例:
SELECT * FROM Geektab1
EXCEPT
SELECT * FROM Geektab2 ;
输出:
| 身份证明 | 名字 | | --- | --- | | four | 马什 |如果第一个查询(INTERSECT)中的行数相同,则这些表是相似的。
同样,如果第二个查询(EXCEPT)的结果为空,则它们等于类似查询的结果。
版权属于:月萌API www.moonapi.com,转载请注明出处