>  投稿者:薄荷アメ 2010/04/12 (月) 00:08:17        [qwerty]
> > 行を列に変換する必要性が思い浮かばない
> > 列に変換したところで行がなくなるじゃん(;´Д`)
> 日付 帳票名 キー値 値
> っていうテーブルを1個だけ持ってて(;´Д`)
> これを用途に応じて使い回そうとしてるの
> データとしては
> 20100411 ほげほげ表 会社名 ほげほげ株式会社
> 20100411 ほげほげ表 決算日 20100331
> 20100411 ほげほげ表 売上高 1,000,000
> …
> みたいになってて(;´Д`)これを
> 会社名      決算日   売上高
> ほげほげ株式会社 20100331 1,000,000
> ふめふめ株式会社 20100630 1,500,000
> …
> みたいに変換したい(;´Д`)
> なんでこんな作りにしたかというと1行1単票にしちゃうとテーブル構成が変わったとき面倒だから

insert into 帳票テーブル (会社名,決算日,売上高) values (
  (select distinct 値 from マスターテーブル m
  where 日付 = (日付), 帳票名 = (帳票名), キー値 = '会社名'),
  (select distinct 値 from マスターテーブル m
  where 日付 = (日付), 帳票名 = (帳票名), キー値 = '決算日'),
  (select distinct 値 from マスターテーブル m
  where 日付 = (日付), 帳票名 = (帳票名), キー値 = '売上高')
);

これを存在する日付×帳票名分コピペ(´ー`)もしくはスクリプトでSQL発行をループ

参考:2010/04/11(日)23時52分33秒