首页 > 解决方案 > 选择语句给出额外的 Null 行

问题描述

所以这是我的 T-SQL 语句:

SELECT 
	NEWID() as Id,
	ss.Id as SkillId,
	ss.Name,
	sc.Vote,
	sc.CandidateId,
	sc.Id As ScoreId

FROM dbo.SoftSkills ss 
LEFT JOIN dbo.Scorecards sc ON ss.Id = sc.SkillId 

给我这个

返回

但我也希望我的选择为每个SkillId返回一个额外的行,其中CandidateId为 Null。

那可能吗 ?

感谢帮助。

编辑:不能在我的帖子开头写“你好”,所以在那里打个招呼:D

标签: sqlperformancetsql

解决方案


你只是想要UNION ALL吗?

SELECT NEWID() as Id, ss.Id as SkillId, ss.Name, sc.Vote,
       sc.CandidateId, sc.Id As ScoreId
FROM dbo.SoftSkills ss LEFT JOIN
     dbo.Scorecards sc
     ON ss.Id = sc.SkillId 
UNION ALL
SELECT NEWID() as Id, ss.Id as SkillId, ss.Name, NULL, NULL, NULL
FROM dbo.SoftSkills ss;

推荐阅读