【发布时间】:2013-09-14 18:35:35
【问题描述】:
我在执行此查询时遇到问题。请在下面查看我的代码。
SELECT (SELECT COUNT(FilteredAppointment.activitytypecodename) AS Expr1
FROM FilteredBusinessUnit INNER JOIN
FilteredSystemUser ON FilteredBusinessUnit.businessunitid = FilteredSystemUser.businessunitid INNER JOIN
FilteredAppointment ON FilteredSystemUser.systemuserid = FilteredAppointment.createdby
WHERE (FilteredBusinessUnit.name IN (@Branch))) AS Appointment,
(SELECT COUNT(FilteredLead.leadid) AS Expr1
FROM FilteredBusinessUnit AS FilteredBusinessUnit_7 INNER JOIN
FilteredSystemUser AS FilteredSystemUser_7 ON FilteredBusinessUnit_7.businessunitid = FilteredSystemUser_7.businessunitid INNER JOIN
FilteredLead ON FilteredSystemUser_7.systemuserid = FilteredLead.createdby
WHERE (FilteredBusinessUnit_7.name IN (@Branch)) AND (FilteredLead.new_referraltypename = 'Bank Staff')) AS Bank_Staff_Referral,
(SELECT COUNT(FilteredLead_3.leadid) AS Expr1
FROM FilteredBusinessUnit AS FilteredBusinessUnit_6 INNER JOIN
FilteredSystemUser AS FilteredSystemUser_6 ON FilteredBusinessUnit_6.businessunitid = FilteredSystemUser_6.businessunitid INNER JOIN
FilteredLead AS FilteredLead_3 ON FilteredSystemUser_6.systemuserid = FilteredLead_3.createdby
WHERE (FilteredBusinessUnit_6.name IN (@Branch)) AND (FilteredLead_3.new_referraltypename = 'Existing Customer')) AS Customer_Referral,
(SELECT COUNT(Filterednew_discoveryinterview.activityid) AS Expr1
FROM FilteredBusinessUnit AS FilteredBusinessUnit_5 INNER JOIN
FilteredSystemUser AS FilteredSystemUser_5 ON FilteredBusinessUnit_5.businessunitid = FilteredSystemUser_5.businessunitid INNER JOIN
Filterednew_discoveryinterview ON FilteredSystemUser_5.systemuserid = Filterednew_discoveryinterview.createdby
WHERE (FilteredBusinessUnit_5.name IN (@Branch))) AS Discovery_Interview,
(SELECT COUNT(FilteredLead_2.leadid) AS Expr1
FROM FilteredBusinessUnit AS FilteredBusinessUnit_4 INNER JOIN
FilteredSystemUser AS FilteredSystemUser_4 ON FilteredBusinessUnit_4.businessunitid = FilteredSystemUser_4.businessunitid INNER JOIN
FilteredLead AS FilteredLead_2 ON FilteredSystemUser_4.systemuserid = FilteredLead_2.createdby
WHERE (FilteredBusinessUnit_4.name IN (@Branch))) AS Generated_Leads,
(选择名称 FROM 过滤的业务单元 WHERE (FilteredBusinessUnit.name IN (@Branch ))) 作为分支
`
代码返回针对单个分支运行的查询结果。但是,会抛出错误消息“子查询返回超过 1 个值。当子查询跟随 =、!=、、>= 或将子查询用作表达式时,这是不允许的。” 当我选择了多个分支。我的猜测是当 select 语句的最后一个块运行时发生错误。
如何编写此查询以显示多个分支的结果
请帮帮我
【问题讨论】:
-
这意味着您的一个子查询一次返回多个值。
-
谢谢雅克·布朗克霍斯特。我明白这意味着什么。我需要有关如何编写此查询的建议,以便它返回过滤器中多个分支的结果。