最适合网络开发者的网站

SQL 教程

SQL主页 SQL 简介 SQL 语法 SQL 选择 SQL 选择不同 SQL 语句 SQL 排序依据 SQL 和 SQL 或 SQL不是 SQL 插入 SQL 空值 SQL 更新 SQL 删除 SQL 选择顶部 SQL 最小值和最大值 SQL 计数 SQL 汇总 SQL 平均值 SQL 类似 SQL 通配符 SQL 输入 SQL 之间 SQL 别名 SQL 连接 SQL 内连接 SQL左连接 SQL右连接 SQL全连接 SQL自连接 SQL联盟 SQL 分组依据 SQL 具有 SQL 存在 SQL 任何、全部 SQL 选择 SQL 插入选择 SQL 案例 SQL 空函数 SQL 存储过程 SQL 注释 SQL 运算符

SQL 数据库

SQL创建数据库 SQL删除数据库 SQL 备份数据库 SQL创建表 SQL删除表 SQL 修改表 SQL 约束 SQL 非空 SQL唯一标识符 SQL 主键 SQL 外键 SQL 检查 SQL 默认值 SQL 索引 SQL 自动增量 SQL 日期 SQL 视图 SQL 注入 SQL 托管 SQL 数据类型

SQL 参考

SQL 关键字 MySQL 函数 SQL Server 函数 MS Access 函数 SQL 快速参考

SQL 例子

SQL 示例 SQL 编辑器 SQL 测验 SQL 练习 SQL训练营 SQL 证书

SQL。初学者课程

尿素

SQL 连接


SQL 连接

A JOIN 子句用于根据两个或多个表之间的相关列来合并它们中的行。

我们来看一下“订单”表中的选择:

订单编号客户ID订购日期
1030821996-09-18
10309371996-09-19
10310771996-09-20

然后,查看“客户”表中的选择:

客户ID顾客姓名联系人姓名国家
1阿尔弗雷德·富特基斯特玛丽亚·安德斯德国
2Ana Trujillo 奉献和赞美安娜·特鲁希略墨西哥
3安东尼奥莫雷诺卷饼店安东尼奥·莫雷诺墨西哥

注意,“订单”表中的“客户ID”列引用了“客户”表中的“客户ID”。上面两个表之间的关系是“客户ID”列。

然后,我们可以创建以下 SQL 语句(包含 INNER JOIN),选择两个表中具有匹配值的记录:

例子

选择订单.订单 ID、客户.客户名称、订单.订单日期
来自订单
内连接客户订单.客户ID=客户.客户ID;
亲自尝试 »

它会产生如下结果:

订单编号顾客姓名订购日期
10308Ana Trujillo 奉献和赞美9/18/1996
10365安东尼奥莫雷诺卷饼店11/27/1996
10383环合之角12/16/1996
10355环合之角11/15/1996
10278贝尔格伦德斯山口8/12/1996

不同类型的 SQL JOIN

以下是 SQL 中 JOIN 的不同类型:

  • (INNER) JOIN:返回两个表中具有匹配值的记录
  • LEFT (OUTER) JOIN:返回左表的所有记录,以及右表中匹配的记录
  • RIGHT (OUTER) JOIN:返回右表的所有记录,以及左表中匹配的记录
  • FULL (OUTER) JOIN:当左表或右表有匹配项时,返回所有记录

SQL 内连接  SQL 左连接  SQL 右连接  SQL 全外连接


通过练习测试自己

锻炼:

将缺失的部件插入 JOIN 连接两个表的子句OrdersCustomers, 使用 CustomerID 两个表中的字段作为两个表之间的关系。

SELECT *
FROM Orders
LEFT JOIN Customers
=
;