-1

我在这里有一个查询,它给出了两行结果:

SELECT @SlsChannelDiv= a.division,@SlsChannel= a.department
                    FROM dbo.m_SalesCode a left join dbo.m_SalesCode b 
                    ON a.up1_code=b.sales_code left join vwEmployeeAds v 
                    ON a.user_id=v.login
                    WHERE v.login = @SalesLogin

我想将该@SlsChannel参数用于其他查询。

Select * from wo where sales in (@SlsChannel)

但这总是给出第一行结果。

我可以通过提供 XML 路径来修改我的第一个查询:

SELECT @SlsChannelDiv= a.division,@SlsChannel= a.department
                        FROM dbo.m_SalesCode a left join dbo.m_SalesCode b 
                        ON a.up1_code=b.sales_code left join vwEmployeeAds v 
                        ON a.user_id=v.login
                        WHERE v.login = @SalesLogin For XML PATH ('')

但是,我收到一个错误,例如:The FOR XML clause is not allowed in a ASSIGNMENT statement.

是否可以在参数中创建一个以@SLSChannel逗号分隔的值In

4

1 回答 1

1
Select * from wo where sales in (SELECT a.department
                FROM dbo.m_SalesCode a left join dbo.m_SalesCode b 
                ON a.up1_code=b.sales_code left join vwEmployeeAds v 
                ON a.user_id=v.login
                WHERE v.login = @SalesLogin)

像这样查询呢?:)

于 2014-01-27T02:46:16.847 回答