2011-09-20 63 views
-1

我正在使用t-sql。 我想用两个coulmns返回一个dataTable:A,B如何从两个t-sql select中组合两列?

但是'union'不是这样。我应该使用什么语法?

select Params as A 
from Table1 
where ID = '1' 

union 

select Params as B 
from Table1 
where ID = '2' 

更新:很抱歉,我有一个错字:@CITD => ID

TIA

+0

请添加一些示例数据以及您希望输出的样子。 – samjudson

+1

这将是一个加入,但你需要显示一个源代码示例和你想要的结果。指定A,B是不够的。 –

回答

0
select T1.Params as A, T2.Params as B 
from Table1 T1 
INNER JOIN Table1 T2 ON @CTID = '1' AND @ID = '2' 

希望这有助于。

0

不知道如何AB涉及其不可能创造一个合乎逻辑的结果集既没有AB等于NULL一个记录。

下面会给你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' 
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')