我对SQL还是很陌生,最近创建的存储过程一直告诉我,子查询返回的结果不止一个,但我不知道是哪个问题。如果有人有时间可以告诉我我所缺少的内容,我将不胜感激!
谢谢!
SELECT DISTINCT a.customer_no [id],
x.esal1_desc [constituent],
a.perf [activity],
a.sp_act_dt [activity_date],
c.description[activity_type],
d.display_name_tiny [solicitor],
s.description [status],
ISNULL(a.num_attendees,0)[attending],
a.notes [notes],
e.address [email]
FROM [dbo].t_special_activity a
left outer join [dbo].tr_special_activity_status s ON s.id = a.status
left outer join [dbo].tr_special_activity c ON c.id = a.sp_act
left outer JOIN [dbo].FT_CONSTITUENT_DISPLAY_NAME() d ON a.worker_customer_no = d.customer_no
left outer JOIN [dbo].T_EADDRESS e on a.customer_no=e.customer_no and primary_ind='Y'
left outer JOIN [dbo].TX_CUST_SAL x on a.customer_no=x.customer_no and default_ind='Y'
WHERE a.status IN (ISNULL(@status, (SELECT DISTINCT id FROM TR_SPECIAL_ACTIVITY_STATUS)))
AND a.sp_act_dt BETWEEN (ISNULL(@activity_start,(SELECT MIN(sp_act_dt) FROM T_SPECIAL_ACTIVITY)))
AND (ISNULL(@activity_end,(SELECT MAX(sp_act_dt) FROM T_SPECIAL_ACTIVITY)))
AND ((ISNULL(@list,0) = 0) OR EXISTS (SELECT customer_no FROM T_LIST_CONTENTS lc WITH (NOLOCK)
WHERE a.customer_no = lc.customer_no and lc.list_no = @list))
答案 0 :(得分:2)
A,您不能使用此表达式:
bind(this)
子查询位于期望单个值的位置。无论如何,我认为您想要:
this.setState
请注意,reader.onload
与this
子句无关。充其量,它什么也没做。最糟糕的是,它会阻碍优化器。
我意识到这有点令人困惑。您以为this.state
需要一个列表-该列表甚至可能是子查询。但是,列表的元素是标量而不是 lists 。因此,当子查询是列表的 时,则假定它是单个值。