• 首页课程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

    PHP中文网