sql-server - SQL Server:如何合并具有不同行数的 3 个表
问题描述
我有 3 个包含不同数据的表,我需要返回一个包含所有 3 个表的表:
Customer
Contacts
Addresses
我只想在一张表和一条记录中获取数据,其中包含所有详细信息,例如 CustomerNumber、Name、City、officeNumber....,例如 Union
SELECT CU.[Name]
FROM Customers CU
WHERE CustomerNumber = @CustomerId
AND IsDeleted = 0
SELECT AD.City, AD.Street
FROM [Addresses] AD
WHERE CustomerId = @CustomerId
AND IsDeleted = 0
SELECT CO.FullName, CO.OfficeNumber, CO.Email
FROM [Contacts] CO
WHERE CustomerId = @CustomerId
AND IsDeleted = 0
结果:
解决方案
行数与列的联合数无关。
你对工会有什么期望?
我想您希望您想要拥有 Id= @CustomerId 的客户的所有信息(姓名地址、联系方式)
如果我是对的,您应该使用 CustomerId 作为连接子句在 3 个表之间进行 2 次连接
推荐阅读
- angular - 离子无法连接到服务器
- spectral-density - 转换功率谱密度的维度
- html - 将 100vh 高度页面中的元素向上滚动并移出视图
- artifactory - 是否可以自动设置 Artifactory 属性?
- spring-boot - 在 SpringBoot 中使用 Jaeger 将请求标头转发到下一个微服务
- powershell - Powershell 使用用户凭据安全登录
- android - Android如何从另一个应用程序获取结果
- typescript - 将值包装在对象中的函数?
- date - 不同工作表中日期范围的VBA Vlookup
- visual-studio-code - 如何在 Rider 中设置 VS Code 配色方案?