news 2026/4/25 9:39: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/4/17 8:38:01

WebGIS开发核心库深度解析:从2D到3D的全栈选择

文章目录一、OpenLayers:开源全能的2D/3D战士1. 技术定位2. 核心特性3. 典型场景4. 代码示例5. 优缺点二、Leaflet:轻量级移动端首选1. 技术定位2. 核心特性3. 典型场景4. 代码示例5. 优缺点三、Mapbox GL JS:WebGL驱动的矢量地图革命1. 技术…

作者头像 李华
网站建设 2026/4/18 16:01:49

Python开发:从入门到实战

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

作者头像 李华
网站建设 2026/4/22 20:31:53

python简单实验

实验一1. 实验目的(1) 掌握Python数值类型数据、字符串的使用方法。(2) 掌握将数学表达式转换成Python语言表达式的方法及注意事项,掌握有关运算符的使用方法。(3) 掌握序列…

作者头像 李华
网站建设 2026/4/23 22:19:16

终极突破:完美解决Vencord中ModView权限限制的完整指南

终极突破:完美解决Vencord中ModView权限限制的完整指南 【免费下载链接】Vencord The cutest Discord client mod 项目地址: https://gitcode.com/GitHub_Trending/ve/Vencord 在Discord社区管理中,ModView功能是管理员查看和管理成员信息的重要工…

作者头像 李华
网站建设 2026/4/18 14:41:47

10、UNIX 文件与进程管理全解析

UNIX 文件与进程管理全解析 在计算机操作中,文件管理和进程控制是非常重要的部分,尤其是在 UNIX 系统中。下面将详细介绍 UNIX 系统中文件的归档、压缩以及进程的相关知识。 1. 文件归档与压缩 在日常使用计算机时,我们常常需要对整个目录进行备份,以防系统崩溃,或者将…

作者头像 李华
网站建设 2026/4/18 11:13:35

14、开源办公与网络应用全解析

开源办公与网络应用全解析 在数字化办公与网络交流的大环境下,有许多实用的工具和应用能帮助我们更高效地完成工作和沟通。下面将详细介绍一些开源办公软件以及网络应用的特点和使用方法。 文档转换与注意事项 当文档转换完成后,进度屏幕会显示转换过程的结果。不过需要注…

作者头像 李华