我想要将多行添加到单个行和列中,并且我正在使用MICROSOFT SQL Server。我尝试了stst命令,但出现错误无法绑定多部分标识符“”。请帮忙!谢谢
select a.CLAIMNO, e.INVNO, d.MSISDN, a.BATCHNO, b.CUSTOMER, b. PRODNO,
b.INCENTIVE, b.QTY, b.STATUS,
b.ROWNUM, b.RECEIVEDBY, b.RECEIVEDDATE, b.REMARKS, b.PESOVALUE
from CSPC_CLAIMHDR a
left join CSPC_CLAIMDTL b on a.PRFNO = b.PRFNO and a.CLAIMNO = b.CLAIMNO
left join CSPC_CUSTOMERS c on c.CUSTNAME = b.CUSTOMER
left join CSPC_PMACCOUNT d on d.CUSTCODE = c.CUSTCODE
left join CSPC_INVOICEHDR e on e.CLAIMNO = a.CLAIMNO
where upper(a.PRFNO) = 'MOM--0108' and b.INCENTIVE not like '%POINTS%' and
a.APPROVEDBY is not null order by b.CUSTOMER
这产生 [结果] [1]
CLAIMNO INVNO
618 SO202
618 SO213
618 SO932
618 SO133
618 SO873
658 SO123
658 SO877
我希望它能像下面这样产生它。
CLAIMNO INVNO
618 SO202,SO213,SO932,SO133,SO873
658 SO123,SO877
答案 0 :(得分:1)
您的声明以
开头SELECT a.CLAIMNO, STUFF((...inner select query that aliases table a...))
内部选择查询为表a加上别名,而不是外部选择查询。 A.claimno在sql处理到该外部级别时不存在/不存在
这是一个更简单的示例:
select a.thing, (select a.otherthing from table a)
a。括号之外不存在任何内容。这些有效
目前还不清楚您要做什么,所以我无法建议您应该怎样做才能达到想要的结果,我只能回答为什么会出现此错误
最好删除外部查询,然后进行调用并将内部查询作为一个 new 问题发布,其中“这会产生(粘贴结果),我希望它能产生(产生所需的结果),请提供帮助”。