使用 Where 子句的 SQL 完全外部联接
SQL 连接语句用于根据公共属性或字段组合来自两个或两个以上表的行或信息。 SQL 中基本上有四种类型的JOINS。
在本文中,我们将讨论使用 WHERE 子句的 FULL OUTER JOIN。
考虑下面的两个表:
样本输入表 1 : PURCHASE INFORMATION Product_ID Mobile_Brand Cost (INR) Customer_Name 1 OnePlus Nord 5G 30,000 Rishabh 2 Samsung Galaxy M51 28,000 Srishti 3 iPhone 12 Pro 1,28,000 Aman 4 Samsung Galaxy S20 55,000 Harsh 5 Realme X50 Pro 40,000 Manjari
样本输入表 2 :
CUSTOMER INFORMATION | ||
Customer_ID | Customer_Name | E_Mail Address |
1 | Srishti | abc@gmail.com |
2 | Rajdeep | def@gmail.com |
3 | Aman | xxx@gmail.com |
4 | Pooja | xyz@gmail.com |
FULL OUTER JOIN : Full Join 提供 LEFT JOIN 和 RIGHT JOIN 串联的结果。结果将包含表 1 和表 2 中的所有行。结果表中没有匹配的行将具有 NULL 值。
SELECT * FROM Table1
FULL OUTER JOIN Table2
ON Table1.column_match=Table2.column_match;
Table1: First Table in Database.
Table2: Second Table in Database.
column_match: The column common to both the tables.
示例输出: RESULTS Product_ID Mobile_Brand Cost (INR) Customer_Name Customer_ID Customer_Name E_Mail Address 1 OnePlus Nord 5G 30,000 Rishabh NULL NULL NULL 2 Samsung Galaxy M51 28,000 Srishti 1 Srishti abc@gmail.com 3 iPhone 12 Pro 1,28,000 Aman 3 Aman xxx@gmail.com 4 Samsung Galaxy S20 55,000 Harsh NULL NULL NULL 5 Realme X50 Pro 40,000 Manjari NULL NULL NULL NULL NULL NULL NULL 2 Rajdeep def@gmail.com NULL NULL NULL NULL 4 Pooja xyz@gmail.com
使用 WHERE CLAUSE 的 FULL OUTER JOIN :将 WHERE 子句与 FULL OUTER JOIN 一起使用有助于检索在连接具有 NULL 条目的两个表时没有条目匹配的所有行。
SELECT * FROM Table1
FULL OUTER JOIN Table2
ON Table1.column_match=Table2.column_match
WHERE Table1.column is NULL
OR Table2.column is NULL;
Table1: First Table in Database.
Table2: Second Table in Database.
column_match: The column common to both the tables.
column: The column having NULL value after Full Outer Join
上述查询仅返回购买过手机且未在客户信息表中保存任何记录的客户以及未购买任何产品的客户信息。
示例输入的 SQL 查询:我们已经考虑了 Big Billion Days 期间来自电子商务网站的移动电话的客户和购买信息。数据库电子商务有两张表,一张是关于产品的信息,另一张是关于客户的信息。现在,我们将在这两个表之间执行 FULL OUTER JOIN 将它们连接到一个表中,并获得有关客户和他们从站点购买的产品的完整数据。
基本 SQL 查询:
1. 创建数据库
CREATE DATABASE database_name;
2. 创建表
CREATE TABLE Table_name(
col_1 TYPE col_1_constraint,
col_2 TYPE col_2 constraint
.....
)
col: Column name
TYPE: Data type whether an integer, variable character, etc
col_constraint: Constraints in SQL like PRIMARY KEY, NOT NULL, UNIQUE, REFERENCES, etc
3. 插入表格
INSERT INTO Table_name
VALUES(val_1, val_2, val_3, ..........)
val: Values in particular column
4. 查看表格
SELECT * FROM Table_name
有关 SQL 语法的更多信息,请访问我们的网站SQL 教程。
输出 :
一、客户信息及采购信息表
2. 全外连接
3. 带 WHERE 子句的全外连接