查询 Sql 连接 [英] Query on Sql Joins

查看:25
本文介绍了查询 Sql 连接的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有三张桌子.

tblLink: (LinkId, LinkName, GroupId, ,SubGroupId)
GroupId 和 SubGroupId 是 tblGroup 和 tblSubGroup
中的外键tblGroup: (GroupId, GroupName)
tblSubGroup: (SubGroupId, SubGroupName)

tblLink: (LinkId, LinkName, GroupId, ,SubGroupId)
GroupId and SubGroupId are foreign key in tblGroup and tblSubGroup
tblGroup: (GroupId, GroupName)
tblSubGroup: (SubGroupId, SubGroupName)

在 tblLink 中,SubGroupId 允许为 Null,但 GroupId 是必需的.

in tblLink SubGroupId is allowed Null but GroupId is Mandatory.

我想为 tblLink 中的每个 LinkId 获取 LinkName、GroupName、SubGroupName
我写了一个查询

I want to fetch LinkName, GroupName, SubGroupName for every LinkId in tblLink
I have written a query

SELECT L.LinkName, G.GroupName, SG.SubGroupName FROM tblLink L
左加入
tblSubGroup SG

(L.SubGroupId=SG.SubGroupId)
内连接
tblGroup G

(L.GroupId=G.GroupId)

SELECT L.LinkName, G.GroupName, SG.SubGroupName FROM tblLink L
Left Join
tblSubGroup SG
ON
(L.SubGroupId=SG.SubGroupId)
Inner Join
tblGroup G
ON
(L.GroupId=G.GroupId)

如果某些 LinkId 没有子组,我想显示 NotExist 而不是 Null

If there is no subgroup for some LinkId I want to show NotExist instead of Null

推荐答案

SELECT
    L.LinkName, G.GroupName, 
    ISNULL(SG.SubGroupName, 'NotExist') AS SubGroupName
FROM
    Link L
....

这篇关于查询 Sql 连接的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆