0
我想计算特定支持选项的行总数,其中行来自两个表,如CSPLineItem和SupportOption 。我使用下面的查询错误:在sql服务器中预期条件的上下文中指定的非布尔类型的表达式
SELECT DISTINCT sot.SupportOptionType_ID,
(Classic.NumberOfLines + MEN.NumberOfLines) TotalNumberOfLines
FROM SupportOptionType sot WITH (NOLOCK)
LEFT JOIN (
SELECT sot.SupportOptionType_ID,
COUNT(li.CSPLineItem_ID) NumberOfLines
FROM CSPLineItem li WITH (NOLOCK)
INNER JOIN SupportOptionType sot WITH (NOLOCK)
ON sot.SupportOptionType_ID = li.SupportOptionType_ID
GROUP BY sot.SupportOptionType_ID
) Classic
LEFT JOIN (
SELECT sot.SupportOptionType_ID,
COUNT(so.SupportOption_ID) NumberOfLines
FROM SupportOption so WITH (NOLOCK)
INNER JOIN SupportOptionType sot WITH (NOLOCK)
ON sot.SupportOptionType_ID = so.SupportOptionType_ID
GROUP BY sot.SupportOptionType_ID
) MEN
但我发现了以下错误接近最后一行:
在一个条件有望
任何人指定的上下文非布尔类型的表达式,请帮忙。
你不是两个表连接在一起。 IE: - >)MEN ON MEN.SupportOptionType_ID = Classic.SupportOptionType_ID – Kahn 2014-08-28 10:29:01
你正在子查询上执行'LEFT JOIN's,但没有为它们指定'ON'子句。 – 2014-08-28 10:29:03