-2

単一のテーブルに次の形式のデータがあります。

キー Col1 Col2 Col3Type
Part1 abc1 cde1 X
Part1 fgh1 Y

選択クエリの結果で、Part1 のすべての列の値を次のように統合したいと考えています。

キー Col1 Col2 Col3
Part1 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'

基本的に、私が気付いた制約は、group by / having がある場合、3 つの列の値がすべて存在する行のみを取得するということです。また、アウトレットSQLで列の値を取得する方法もわかりません。a.* を選択すると、最初の行から表示されます。どうすれば b. を取得できますか?

4

1 に答える 1

0
select 
  Key,
  max(Col1) as Col1,
  max(Col2) as Col2,
  max(Col3) as Col3
from table
group by Key
于 2013-03-23T04:33:24.753 に答える