首页课程SQL趣味课堂连接类型

连接类型

目录列表

自定义别名

通过使用 SQL,可以为表名称或列名称指定别名。

基本上,创建别名是为了让列名称的可读性更强。

实例

SELECT ct.ID, ct.Name, ord.Name, ord.Amount
FROM customers AS ct, orders AS ord
WHERE ct.ID=ord.Customer_ID
ORDER BY ct.ID;

上面的 SQL 语句使用了指定缩短的表名。


从下面的选项中选择填写,选择项目名称和购买项目的客户名称。使用自定义名称缩短语句。

SELECT ct.name,.name FROM customers ct, items AS it WHERE it.seller_id=.id;

连接类型

以下是可以在 SQL 中使用的连接类型:

  • 内连接(INNER JOIN)

  • 左连接(LEFT JOIN)

  • 右连接 (RIGHT JOIN)

SQL INNER JOIN 语法:

SELECT column_name(s)
FROM table1 INNER JOIN table2 
ON table1.column_name=table2.column_name;

ON 关键字用于指定内部连接条件。

INNER JOIN的工作原理如下图所示:

PF])JVXN0E`S1OU(C0IWZ3Y.png

注释:INNER JOIN 与 JOIN 是相同的。

拖拉排序查询,选择学生的姓名和学生就读的大学名称。

  • WHERE
  • SELECT students.name,
  • universities.name
  • students.university_id=universities.id;
  • FROM students,
  • universities

左连接(LEFT JOIN)

LEFT JOIN 关键字从左表(table1)返回所有的行,即使右表(table2)中没有匹配。

如果右表中没有匹配,则结果为 NULL。

SQL LEFT JOIN 语法:

SELECT table1.column1, table2.column2...
FROM table1 LEFT OUTER JOIN table2
ON table1.column_name = table2.column_name;

填写空格,选择客户名称和项目名称(使用 LEFT JOIN 来显示项目名称)。

SELECT customers.name, items.name FROM customers LEFT JOIN items customers.id=seller_id;

右连接(RIGHT JOIN)

RIGHT JOIN 关键字从右表(table2)返回所有的行,即使左表(table1)中没有匹配。

如果左表中没有匹配,则结果为 NULL。

SQL RIGHT JOIN的基本语法如下:

SELECT table1.column1, table2.column2...
FROM table1 RIGHT OUTER JOIN table2
ON table1.column_name = table2.column_name;

同样,OUTER关键字是可选的,可以省略。

RIGHT JOIN 的工作原理如下图所示:

{5(L99C%J]CW)9TANJI9VA9.png

在某些数据库中,RIGHT JOIN 称为 RIGHT OUTER JOIN。

拖拉排序代码,选择学生姓名和所有大学名称(使用 RIGHT JOIN 来显示所有大学名称)。

  • SELECT students.names
  • universities.names
  • ON students.university_id=universities.id;
  • FROM students
  • RIGHT OUTER JOIN universities