📜  如何比较 SQL 中的两个查询

📅  最后修改于: 2022-05-13 01:54:28.948000             🧑  作者: Mango

如何比较 SQL 中的两个查询

SQL 中的查询:
查询要么是对来自您的信息的数据结果的邀请,要么是对信息采取行动的邀请,或两者皆有。一个问题将为您提供一个简单问题的解决方案,执行计算,混合来自完全不同表的数据,添加、更改或删除信息中的数据。

创建数据库:
我们使用CREATE DATABASE命令来创建一个新的 SQL 数据库。

句法 -

在创建的数据库中创建表:
我们使用CREATE TABLE命令来创建一个新的 SQL 数据库。

句法 -

将值插入到创建的 Table 中:
我们使用INSERT INTO命令来创建一个新的 SQL 数据库。

句法 -

创建数据库和表的示例代码 -

PHP
CREATE DATABASE myDatabase;
  
CREATE TABLE myTable
(
Pid int,
FName varchar(255),
LName varchar(255),
Adrs varchar(255),
District varchar(255)
);
  
INSERT INTO myTable (Pid, FName, LName, Adrs, District)
VALUES ('1','Krishna','Kripa','Jansa','Varanasi');


PHP
CREATE DATABASE myDatabase1;
GO
USE myDatabase1;
GO
  
CREATE TABLE myTable
(
Aid int,
Atype varchar(10),
Acost varchar(10)
);
  
GO
  
INSERT INTO myTable (Aid, Atype, Acost)
  VALUES ('001', '1', '40'),
  ('002', '2', '80'),
  ('003', '3', '120')
GO
  
CREATE DATABASE myDatabase2;
GO
USE myDatabase2;
GO
  
CREATE TABLE myTable
(
Aid int,
Atype varchar(10),
Acost varchar(10)
);
  
GO
  
INSERT INTO myTable (Aid, Atype, Acost)
  VALUES ('001', '1', '40'),
  ('002', '2', '80'),
  ('003', '3', '120'),
  ('004', '4', '160')
  
GO


PHP
SELECT * FROM myDatabase2.myTable
EXCEPT
SELECT * FROM myDatabase1.myTable


输出 -

myDatabase: myTable

Pid

FName

LName

Adrs

District

1

Krishna

Kripa

Jansa

Varanasi

查询比较:
例如,我们在完全不同的数据库中有 2 个相似的表,我们希望了解有什么不同。以下是制作示例数据库、表格和信息的脚本。

PHP

CREATE DATABASE myDatabase1;
GO
USE myDatabase1;
GO
  
CREATE TABLE myTable
(
Aid int,
Atype varchar(10),
Acost varchar(10)
);
  
GO
  
INSERT INTO myTable (Aid, Atype, Acost)
  VALUES ('001', '1', '40'),
  ('002', '2', '80'),
  ('003', '3', '120')
GO
  
CREATE DATABASE myDatabase2;
GO
USE myDatabase2;
GO
  
CREATE TABLE myTable
(
Aid int,
Atype varchar(10),
Acost varchar(10)
);
  
GO
  
INSERT INTO myTable (Aid, Atype, Acost)
  VALUES ('001', '1', '40'),
  ('002', '2', '80'),
  ('003', '3', '120'),
  ('004', '4', '160')
  
GO

输出 -
对于 myDatabse1 –

Aid

Atype

Acost

001

1

40

002

2

80

003

3

120

对于 myDatabase2 –

Aid

Atype

Acost

001

1

40

002

2

80

003

3

120

004

4

160

使用 EXCEPT 关键字比较表中的 SQL 查询:
EXCEPT显示了 2 个表之间的区别。比较两个表之间的变化是不会的。

现在在我们使用 EXCEPT 的地方运行这个查询 来自 DB1 的 DB2 上的关键字 –

PHP

SELECT * FROM myDatabase2.myTable
EXCEPT
SELECT * FROM myDatabase1.myTable

输出 -

Aid

Atype

Acost

004

4

160