2013-03-23 88 views
-2

我有一個單一的表中這個格式數據:整合多個列值成單列

密鑰Col1中col2的Col3Type
第1部分ABC1 cde1           X
第1部分                    fgh1  Ÿ

我想我的選擇查詢的結果鞏固了第一部分的所有列值是這樣的:

主要Col1中col2的COL3
第一部分ABC1 cde1 fgh1

我嘗試使用GROUP BY/HAVING,只是一個做使用Type列的值自聯接。 這些沒有工作。

select 
    a.Key ,a.Col1, a.Col2, b.Col3 
    from table a 
    join table b on 
    a.Key = b.Key and 
    b.Type ='Y' and 
    a.Type= 'X' 

基本上我注意到的約束是,如果我擁有/ by的組,我只會得到所有三列值都存在的行。此外,我不知道如何獲得插座SQL中的列值。選擇一個*會從第一行給我。我如何得到b?

回答

0
select 
    Key, 
    max(Col1) as Col1, 
    max(Col2) as Col2, 
    max(Col3) as Col3 
from table 
group by Key 
+0

就像一個魅力!謝謝葉戈爾。我正在閱讀關於最大值。 – 2013-03-23 06:12:03