有人编写了以下存储过程查询(我删除了所有不相关的代码以便于阅读)
SELECT
CRL.ClientNum ,
..."A lot of columns"...,
ISNULL((SELECT SUM(Amount) FROM db..History dh (nolock) WHERE dh.id = dd.Id AND ActivityId = 11), 0.00) AS [Some Amt],
..."A lot more columns"...
FROM db..[SomeLog] SL
..."A lot of inner joins and left joins"...
where clause
order by clause
这一切都没关系,但现在我需要输入一个Case语句来选择/比较“db..History”表中的列。问题是此表中没有现有的连接。
答案 0 :(得分:1)
也许你的内心联系不正确,但是,你可以create a view你必要的表格&字段并实现连接。在大多数情况下,使用可视化工具(如上面的链接所示)来创建视图比编写代码更容易和更好。
大多数联接问题都是因为错误地创建了表。如果您创建的表格分布得非常清晰,那么它可以为您提供很多帮助。