news 2026/6/4 9:54:47

SQL联查案例

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
SQL联查案例

SQL 联查(Join)是将来自两个或多个表的数据结合在一起的操作。以下是一些常用的 SQL 联查示例,包括内联接、左联接、右联接和全外联接。

示例数据库表和数据

1. Customers (客户表)
CustomerIDNameCity
1AliceNew York
2BobLos Angeles
3CharlieChicago
4DavidSan Francisco
5EveMiami
2. Orders (订单表)
OrderIDCustomerIDOrderDateAmount
10112025-01-15150.00
10212025-02-20200.00
10322025-01-25300.00
10432025-03-05450.00
10542025-04-10500.00

查询和输出效果

1. 内联接 (INNER JOIN)

查询所有下过订单的客户及其订单信息:

SELECT Customers.CustomerID, Customers.Name, Orders.OrderID, Orders.OrderDate, Orders.Amount FROM Customers INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID;

输出结果:

CustomerIDNameOrderIDOrderDateAmount
1Alice1012025-01-15150.00
1Alice1022025-02-20200.00
2Bob1032025-01-25300.00
3Charlie1042025-03-05450.00
4David1052025-04-10500.00
2. 左联接 (LEFT JOIN)

查询所有客户及其订单信息,包括没有下过订单的客户:

SELECT Customers.CustomerID, Customers.Name, Orders.OrderID, Orders.OrderDate, Orders.Amount FROM Customers LEFT JOIN Orders ON Customers.CustomerID = Orders.CustomerID;

输出结果:

CustomerIDNameOrderIDOrderDateAmount
1Alice1012025-01-15150.00
1Alice1022025-02-20200.00
2Bob1032025-01-25300.00
3Charlie1042025-03-05450.00
4David1052025-04-10500.00
5EveNULLNULLNULL
3. 右联接 (RIGHT JOIN)

查询所有订单及其客户信息,包括没有客户信息的订单:

SELECT Customers.CustomerID, Customers.Name, Orders.OrderID, Orders.OrderDate, Orders.Amount FROM Customers RIGHT JOIN Orders ON Customers.CustomerID = Orders.CustomerID;

输出结果:

CustomerIDNameOrderIDOrderDateAmount
1Alice1012025-01-15150.00
1Alice1022025-02-20200.00
2Bob1032025-01-25300.00
3Charlie1042025-03-05450.00
4David1052025-04-10500.00
4. 全外联接 (FULL OUTER JOIN)

查询所有客户与所有订单的信息,包括没有匹配的客户和订单:

SELECT Customers.CustomerID, Customers.Name, Orders.OrderID, Orders.OrderDate, Orders.Amount FROM Customers FULL OUTER JOIN Orders ON Customers.CustomerID = Orders.CustomerID;

输出结果:

CustomerIDNameOrderIDOrderDateAmount
1Alice1012025-01-15150.00
1Alice1022025-02-20200.00
2Bob1032025-01-25300.00
3Charlie1042025-03-05450.00
4David1052025-04-10500.00
5EveNULLNULLNULL
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/30 14:50:46

效率翻倍!亚马逊 AI 重塑全球零售的智能贸易密码

当跨境电商的竞争焦点仍停留在流量、价格与物流效率时,亚马逊发布的“下一代跨境链”将战场拉升至全新维度——以人工智能为核心的智能化全链路决策,这绝非一次简单工具迭代,而是通过AI深度赋能,重构全球贸易效率与卖家能力的战略…

作者头像 李华
网站建设 2026/6/3 11:38:28

OpenLayers:五大核心特性解析

文章目录一、模块化架构:六大核心组件构建地图生态二、多源数据支持:无缝集成全球主流地图服务三、灵活的图层管理:动态控制数据展示四、强大的交互功能:支持复杂地理操作五、跨平台兼容性:全浏览器与设备覆盖六、性能…

作者头像 李华
网站建设 2026/5/30 17:18:24

Python开发:从基础到实战

目录 第一部分:见道——Python基础与编程思想 第1章:缘起——初识Python与编程世界 1.1 万法皆有源:编程与计算机科学的简史。1.2 为何是Python:Python的哲学——“禅”与“道”。1.3 工欲善其事:搭建你的第一个Pyt…

作者头像 李华
网站建设 2026/6/3 15:39:54

Python开发:从零基础到项目实战

目录 第一部分:见道——Python基础与编程思想 第1章:缘起——初识Python与编程世界 1.1 万法皆有源:编程与计算机科学的简史。1.2 为何是Python:Python的哲学——“禅”与“道”。1.3 工欲善其事:搭建你的第一个Pyt…

作者头像 李华
网站建设 2026/6/2 18:39:13

20、深入了解 smbclient:实现 Linux 与 Windows 资源交互

深入了解 smbclient:实现 Linux 与 Windows 资源交互 在当今多元化的 IT 环境中,Linux 和 Windows 系统常常需要协同工作,实现资源的共享与交互。smbclient 作为一款强大的客户端工具,为我们提供了便捷的途径来访问 SMB/CIFS 服务器上的资源,其功能类似于传统的 ftp 程序…

作者头像 李华