gpt4 book ai didi

sql-server - 使用可为空的外键连接两个表?

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

我在下面创建了两个表,在这种情况下,FK_TypeID 可以为空。我想编写一个查询,返回两个表的连接

如果某行的 FK_TypeIDNULL,则 TypeName 也为 NULL。我不知道如何创建这样的连接语句?

[Actions]
ActionsID
Date
Message
FK_TypeID //links to the table below

[Type]
TypeID
TypeName

我当前的语句如下所示,它只是跳过 NULL FK_TypeID

SELECT        *
FROM Actions
INNER JOIN TypeName ON Actions.FK_TypeID = [Type].TypeID

非常感谢您的帮助!

最佳答案

您只需要使用LEFT JOIN

SELECT Actions.Date, Actions.Message, Type.TypeName
FROM Actions
LEFT JOIN Type
ON Type.TypeID = Actions.FK_TypeID

如果未找到与 Actions 匹配的内容并将其与 Type 绑定(bind),则 Type 中的所有列都将为 NULL.

Here is a good graphical visualization of the different types of joins in SQL

关于sql-server - 使用可为空的外键连接两个表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10148856/

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