📜  SQL 自然连接

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

SQL 自然连接

在本文中,我们将讨论 SQL Natural Join 的概述,然后主要集中在示例的帮助下实现查询。让我们一一讨论。

概述 :
自然连接是一种 SQL 连接操作,它基于表中的公共列创建连接。要执行自然连接,两个表之间必须有一个公共属性(列)。自然连接将从多个关系中检索。它分三步工作。

句法 :
我们将使用以下语法执行自然连接查询。

SELECT *
FROM TABLE1
NATURAL JOIN TABLE2;

自然连接的特点:
在这里,我们将讨论自然连接的特点。

  1. 它将执行笛卡尔积。
  2. 它查找一致的元组并删除不一致的元组。
  3. 然后它删除重复的属性。

实现 SQL Natural Join 的步骤:
在这里,我们将讨论实现 SQL Natural Join 的步骤如下。



步骤 1:创建数据库:

create database geeks;

步骤 2:使用数据库:
使用这个数据库如下。

use geeks;

步骤 3:将表引用到数据库中:
这是我们在 geeks 数据库中的表,如下所示。

表 1:部门 –

Create Table department
(
   DEPT_NAME Varchar(20),
   MANAGER_NAME Varchar(255)
);

表 2:员工 –

Create Table employee
(
   EMP_ID int,
   EMP_NAME Varchar(20),
   DEPT_NAME Varchar(255)
);

第 4 步:插入值:
将值添加到表中,如下所示。

INSERT INTO DEPARTMENT(DEPT_NAME,MANAGER_NAME) VALUES ( "IT", "ROHAN");
INSERT INTO DEPARTMENT(DEPT_NAME,MANAGER_NAME) VALUES ( "SALES", "RAHUL");
INSERT INTO DEPARTMENT(DEPT_NAME,MANAGER_NAME) VALUES ( "HR", "TANMAY");
INSERT INTO DEPARTMENT(DEPT_NAME,MANAGER_NAME) VALUES ( "FINANCE", "ASHISH");
INSERT INTO DEPARTMENT(DEPT_NAME,MANAGER_NAME) VALUES ("MARKETING", "SAMAY");

INSERT INTO EMPLOYEE(EMP_ID, EMP_NAME, DEPT_NAME) VALUES (1, "SUMIT", "HR");
INSERT INTO EMPLOYEE(EMP_ID, EMP_NAME, DEPT_NAME) VALUES (2, "JOEL", "IT");
INSERT INTO EMPLOYEE(EMP_ID, EMP_NAME, DEPT_NAME) VALUES (3, "BISWA", "MARKETING");
INSERT INTO EMPLOYEE(EMP_ID, EMP_NAME, DEPT_NAME) VALUES (4, "VAIBHAV", "IT");
INSERT INTO EMPLOYEE(EMP_ID, EMP_NAME, DEPT_NAME) VALUES (5, "SAGAR", "SALES");

步骤 5:验证插入的数据:
这是我们在表里面的数据如下。

SELECT * FROM EMPLOYEE;

输出 :

EMP_IDEMP_NAMEDEPT_NAME
1SUMITHR
2JOELIT
3BISWAMARKETING 
4VAIBHAVIT
5SAGARSALES

SELECT * FROM DEPARTMENT;

输出 :

DEPT_NAMEMANAGER_NAME
ITROHAN
SALESRAHUL
HRTANMAY
FINANCEASHISH
MARKETINGSAMAY

步骤 6:查询以实现 SQL 自然连接:

SELECT *
FROM EMPLOYEE
NATURAL JOIN DEPARTMENT;

输出 :

EMP_IDEMP_NAMEDEPT_NAMEMANAGER_NAME
1SUMITHRTANMAY
2JOELITROHAN
3BISWAMARKETING SAMAY
4VAIBHAVITROHAN
5SAGARSALESRAHUL