我试图改变这个是动态的,但我还是坚持在数据集..
例如,语句我如何将此语句更改为动态SQL?
SELECT * FROM一个
WHERE ID IN(1,2)
,也1,2-来自
SELECT ID FROM乙
WHERE类型= '%XXX%'
声明以上可以返回许多数
我试图声明@id但我没有ID ea
所以,有什么想法?
感谢您的建议:)
我试图改变这个是动态的,但我还是坚持在数据集..
例如,语句我如何将此语句更改为动态SQL?
SELECT * FROM一个
WHERE ID IN(1,2)
,也1,2-来自
SELECT ID FROM乙
WHERE类型= '%XXX%'
声明以上可以返回许多数
我试图声明@id但我没有ID ea
所以,有什么想法?
感谢您的建议:)
SELECT * FROM A
WHERE id IN (
SELECT id FROM B
WHERE type='%xxx%')
这就是所谓的subquery。
编辑:当使用子查询不是一个选项,你想使用一个变量,你可以声明一个临时表,并加入表A
与该表。
DECLARE @C table (id int)
INSERT @C (id)
SELECT id FROM B
WHERE type='%xxx%'
SELECT A.*
FROM A INNER JOIN @C c ON A.id = c.id
SELECT A.* FROM A
INNER JOIN B
WHERE B.type='%xxx%'
AND A.ID = B.ID
也许你可以使用内部联接,它应该返回你,你在看
建议一个结果集,请重写的问题,所以我可以读取它。 – Jodrell
你要澄清这个问题。我不明白你问什么 – gazzwi86