当前位置: 首页 > news >正文

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
http://www.cnnetsun.cn/news/62368.html

相关文章:

  • minio分片上传
  • 基于MATLAB实现深度学习图像分类
  • 9、UNIX/Linux 文件操作全解析
  • 企业SRC支付漏洞EDUSRC众测挖掘思路技巧操作分享
  • webpack输出代码报错到指定文本文件
  • 自然语言处理容易混淆知识点(二)BERT和BERTopic的区别
  • GPT-5.2与Gemini 3.0 Pro技术选型指南:核心能力对比+第三方API接入全攻略
  • LangSmith:AI Agent开发者的效率神器,从OpenAI到LangChain都在用!
  • 智能图表生成:当数据分析从“怎么做图”变成“问什么”——某平台新工作流的技术解构与应用前瞻
  • 4、VXLAN BGP EVPN基础解析
  • 22、VXLAN BGP EVPN 多 Pod 与多 Fabric 部署方案解析
  • 2025年十大项目管理系统排名:综合功能、场景与用户口碑的权威榜单
  • Docker部署前端项目,收藏这篇就够了
  • Python+Vue的大学生就业信息管理系统 Pycharm django flask
  • 15 分钟获现场信号,30 分钟建指挥链路!分布式系统赋能救援 “秒响应”
  • 自动化测试中的常见陷阱与规避
  • 6-4 WPS JS宏 不重复随机取值应用
  • 《余行论》第七篇:历史篇
  • 《余行论》第九篇:证验篇
  • 构建动态响应式动画架构:lottie-ios与现代数据流技术融合实践
  • 起薪 15K+!网安领跑 2025IT 转行 6 大榜,政策红利 + 百万缺口,路径直接抄
  • 小程序商城搭建 自带拼团砍价功能 快速引爆销量
  • 海外网红营销:超越促销,用“圣诞故事”绑定品牌情感
  • Qwen3-32B双模式大模型:重构企业AI效率的范式革命
  • 9、深入探索AppStack:创建、分配、测试与管理全流程
  • 12、ThinApp与App Volumes结合应用及Horizon View集成指南
  • 16、在 Citrix XenApp 环境中部署 App Volumes
  • 国开(铸造学院开放大学)25秋《生产与运作管理》形考任务1【标准答案】
  • DETR 2025新突破:从农业到工业的实时检测革命
  • 深度学习优化参数深度解析:揭秘学习率调度的实战指南