我正在使用t-sql。 我想返回一个带有两个coulmns的dataTable:A,B
但'联盟'不是这样的。我应该使用什么语法?
select Params as A
from Table1
where ID = '1'
union
select Params as B
from Table1
where ID = '2'
更新:很抱歉,我有一个错字:@CITD => ID
TIA
答案 0 :(得分:0)
在不知道A
和B
如何关联的情况下,无法创建逻辑结果集,其中A
或B
对于一条记录都不等NULL
。< / p>
以下内容将为您提供1个包含2列的结果集,但如果您希望将它们更多地“合并”,则需要更多关于它们如何相关的信息:
select Params as A, NULL as B
from Table1
where @CTID = '1'
union
select NULL as A, Params as B
from Table1
where @ID = '2'
答案 1 :(得分:0)
select T1.Params as A, T2.Params as B
from Table1 T1
INNER JOIN Table1 T2 ON @CTID = '1' AND @ID = '2'
希望这有帮助。
答案 2 :(得分:0)
SELECT
MAX(CASE ID WHEN '1' THEN Params END) AS A,
MAX(CASE ID WHEN '2' THEN Params END) AS B
FROM Table1
WHERE ID IN ('1', '2')