gpt4 book ai didi

sql-server-2008 - SQL Server 2008 中跨多个表的 SQL OUTER JOIN

转载 作者:行者123 更新时间:2023-12-04 07:04:02 25 4
gpt4 key购买 nike

我有一个 SQL Server 2008 数据库。这个数据库有三个表:


  - Id
- FullName
- MembershipStatusId (nullable)
- HairStyleId (nullable)

成员(member)状态
  - Id
- Name

发型
  - Id
- ColorName
- Description

我需要创建一个查询,列出我数据库中的所有人员。因为 MembershipStatusIdHairStyleId 都是可为空的,我知道我需要做一个左外连接。但是,因为有多个表,我不知道该怎么做。使用单个左外连接,我知道我可以做到这一点:
SELECT
p.*,
m.Name as 'MembershipStatus',
-- how do i include the person's hair color as part of my result set?
FROM
Person p LEFT OUTER JOIN
MembershipStatus m ON p.[MembershipStatusId]

但是,我不确定如何为发型名称添加左外连接。有人可以告诉我如何包含人的头发颜色吗?

谢谢!

最佳答案

您只需执行另一个 LEFT JOIN 以包含 HairStyle Table

SELECT
p.*,
m.Name as 'MembershipStatus',
h.ColorName
FROM Person p
LEFT JOIN MembershipStatus m
ON p.[MembershipStatusId] = m. Id
LEFT JOIN HairStyle h
ON p.HairStyleId = h.id

查看 SQL Fiddle 上的演示

关于sql-server-2008 - SQL Server 2008 中跨多个表的 SQL OUTER JOIN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10584469/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com