SQLプログラミング質問スレ - コメント[4]
このスレでは「こういうことをやりたいんだけどSQLでどう書くの?」「こういうSQLを書いたんだけどうまく動きません><」といった質問を受け付けています。質問するときは使用するDBMSを必ず明記してください。質問... 全文を表示
よくある質問4
(問)
列の数が可変な問合せはどう書きますか?
(答)
標準SQLでは書けません。
pivotという機能を搭載したDBMSなら一見書けそうですが実はやっぱり書けません。
Oracle 11g以降でpivot xmlというキーワードを使用すれば一応可変っぽくはなります。
が、素直にプロシージャを書くかアプリケーションで処理したほうが良いでしょう。
SQL Serverのpivot(2005以降)
http://msdn.microsoft.com/ja-jp/library/ms177410.aspx
Oracleのpivot(11g以降)
http://download.oracle.com/docs/cd/E16338_01/server.112/b56299/statements_10002.htm#CHDCEJJE
http://www.oracle.com/technetwork/articles/sql/11g-pivot-097235.html