SQL自连接,内连接,区别

自连接

1、自连接是在同一个表上实行多表连接,进行自连接时须先将数据表虚拟化另一个表。(就像照镜子)

2.语法

SELECT a.column_name, b.column_name...

FROM table1 a, table1 b

WHERE a.common_field = b.common_field;

3.格式:SELECT 目标列

FROM 基表 a,基表 b

WHERE 等值连接(后面可添加其他筛选条件)

内连接

1. 功能与基本连接相似,但表现形式不同。

2. 不同在于:FROM子句中的两个表用(inner)join内连接关键字;WHERE创建的等值连接就放在ON语句块儿中,其他的条件再筛选出来放在WHERE条件中。

3. 语法

SELECT 表名.列名

FROM table a (inner) jion table b

ON(表名.主键=表明.外键)

WHERE 具体限制

区别

1、自然连接一定是等值连接,但等值连接不一定是自然连接。等值连接不把重复的属性除去;而自然连接要把重复的属性除去。

2、等值连接要求相等的分量,不一定是公共属性;而自然连接要求相等的分量必须是公共属性。

3、等值连接不把重复的属性除去;而自然连接要把重复的属性除去。

经验分享 程序员 微信小程序 职场和发展