2016-12-29 17 views
1

私が作成したクエリを持っている:私はそれを変換したい行から列へのSQL?

ID group data 
-- ----- ---- 
1 A  123 
1 B  456 
2 A  234 
2 B  567 

ID A data B data 
-- ------ ------ 
1 123  456 
2 234  567 

はこれを行う簡単な方法はありますか?あなたの既存のクエリにこれを構築することができますが、見ないかもしれ

select id, 
     max(case when group = 'A' then data end) as group_a, 
     max(case when group = 'B' then data end) as group_b 
from (<your query here>) q 
group by id; 

:ちょうど条件付き集約を使用

SELECT data FROM <existing query> WHERE group='A' 
OUTER JOIN 
SELECT data FROM <existing query> WHERE group='B' 
+0

mysql/sql server or oracle? – sumit

+0

これはmysqlクエリです –

+0

テーブルを作成するクエリも表示できますか? –

答えて

3

:クエリはので、私のようなものを避けるためにしようとしているすでにかなり複雑ですそれは何も提案することができません。