ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 9820|回复: 7

SQL问题:如何用Left Join 连接两个以上的表

[复制链接]

TA的精华主题

TA的得分主题

发表于 2005-9-21 15:52 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

已知有3个表分别为A,B,C

A表内容:

代号   品名

A1    一

A2    二

A3    三

B表内容:

代号   产量

A1    1000

A3    2000

C表内容:

代号   单价

A2    1.05

A3    1.10

希望能够用SQL语句生成D表,内容为

代号   品名   产量   单价

A1    一   1000

A2    二         1.05

A3    三   2000    1.10

我用Left Join(A表为主表)的办法可以分别连接A-B和A-C,但三个表一起连接的SQL语句就不会写了,除非生成临时表再用Left Join,但这未免太麻烦了,希望能有更简单的办法。请高手不吝指教,非常感谢!

TA的精华主题

TA的得分主题

发表于 2005-9-22 07:46 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

select a.代号,a.品名,b.产量,c.单价

from a left join b on a.代号=b.代号 left join c on a.代号=c.代号

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-9-22 08:28 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
不行啊!提示语法错误,操作符丢失.

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-9-22 09:49 | 显示全部楼层

连猜带蒙的做出来了:

strSQL = "Select A.代号,A.品名,B.数量,C.单价 From (A Left Join B On A.代号=B.代号) Left Join C On A.代号=C.代号"

TA的精华主题

TA的得分主题

发表于 2005-9-22 16:17 | 显示全部楼层
以下是引用HLAI在2005-9-22 8:28:38的发言: 不行啊!提示语法错误,操作符丢失.

提醒一下,在ACCESS连接两个以上的表要用括号把每一层的连接括起来才行,这在语法上有点不同。

strSQL = "Select A.代号,A.品名,B.数量,C.单价 From (A Left Join B On A.代号=B.代号) Left Join C On A.代号=C.代号"

TA的精华主题

TA的得分主题

发表于 2005-9-23 09:01 | 显示全部楼层
在ACCESS中用查询设计器做出来,会自动生成SQL语句的。

TA的精华主题

TA的得分主题

发表于 2005-10-4 21:49 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
使用查询设计器时,如果显示的表之间没有建立关系的话,可以试试手动建立关系~这样access就会生成jion

TA的精华主题

TA的得分主题

发表于 2011-2-4 08:02 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
谢谢分享!我是来学习的,留个记号。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-1-11 22:46 , Processed in 0.024887 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表