国家
CountryKey
CountryName
ApprovedCountry
ApprovedCountryKey
CountryKey
Approved
Country
表格中的数据
1,BD
2,USA
3,UK
ApprovedCountry
表格中的数据
--
1,1,1
我需要的是
CountryKey,CountryName,Approved
1,BD,1
2,USA,0
3,UK,0
答案 0 :(得分:1)
尝试:
select c.CountryKey, c.CountryName, coalesce(a.Approved,0) Approved
from Country c
left join ApprovedCountry a on c.CountryKey = a.CountryKey
答案 1 :(得分:0)
这是将主键与外键相关的数据的直接连接。
SELECT
Country.CountryKey,
Country.CountryName,
CountryApproved.Approved
FROM
Country
LEFT JOIN
ApprovedCountry
ON Country.CountryKey = ApprovedCountry.CountryKey
如果不是 ApprovedCountry表中的匹配记录,则使用LEFT连接。如果CountryApproved表中没有记录,则使用LEFT联接意味着NULL
将出现在“已批准”列中。
如果NULL
值可以假定为“未批准”,则选择的第3行可以更改为COALESCE(CountryApproved.Approved, 0) AS Approved