2011-09-20 5 views
-1

J'utilise t-sql. Je veux retourner un dataTable avec deux coulmns: A, Bcomment combiner deux colonnes de deux select t-sql?

Mais la 'union' n'est pas le chemin. Quelle syntaxe devrais-je utiliser?

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

union 

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

mise à jour: Désolée, j'ai eu une faute de frappe: @CITD => ID

TIA

+0

Veuillez ajouter quelques exemples de données et ce à quoi vous voulez que la sortie ressemble. – samjudson

+1

Ce sera un JOIN mais vous devrez montrer un exemple source et le résultat que vous voulez. La spécification de A, B n'est pas suffisante. –

Répondre

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

Hope this helps .

0

Sans savoir comment A et B rapporte qu'il soit impossible de créer un ensemble logique de résultat où ni A ou B égal NULL pour un enregistrement.

Ce qui suit vous donnera 1 jeu de résultats avec 2 colonnes, mais auront besoin de plus d'informations sur la façon dont ils se rapportent si vous le souhaitez pour eux d'être « fusionnés » plus:

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')