• ベストアンサー

複数のフィールドからデータをまとめるには?

mysql5.0.18です 日単位に買い物リストを作っています テーブル名「kaimono」 フィールドは下記の通り 「date」 「data1」 「data2」 「data3」 データはこんな感じです 2月1日 タバコ 書籍  ラーメン 2月2日 本   ジュース 2月3日 タバコ ラーメン さて、これを 2月1日 タバコ 2月1日 書籍 2月1日 ラーメン 2月2日 本 2月2日 ジュース 2月3日 タバコ 2月3日 ラーメン と表示させたいのですが、可能でしょうか? 余分なフィードを表示しても問題ありません ようするに、data1,2,3をばらけて表示させたいのです よろしくお願いします

質問者が選んだベストアンサー

  • ベストアンサー
  • galoon
  • ベストアンサー率28% (38/133)
回答No.1

こんなんいかがでしょう? (select date,data1 from kaimono) union (select date,data2 from kaimono) union (select date,data3 from kaimono) order by date; 詳しくは、リファレンスのUNIONを見てください。

jojo12345
質問者

お礼

返信が遅くなり申し訳ございません 回答の通り、うまくいきました ありがとうございました

その他の回答 (2)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.3

実行方法は既出のとおりMySQL5であれば UNIONでしょう 根本的にDBの構築を見直した方がよいでしょうね。 いちいちUNIONしないとコードが検索できないのは スピード面でも無駄が多いと思われます。

jojo12345
質問者

お礼

助言ありがとうございます よくよく考えてみます ありがとうございました

回答No.2

実行していないので、怪しいですが、、 UNION クエリでいけると思います。。 UNIONクエリの場合 select date,data1 as data from kaimono union all select date,data2 as data from kaimono union all select date,data3 as data from kaimono その後、日付順に並べるのであれば、これをサブクエリにして、order by を実行してください。 例) select date,data from (・・・・・) order by 1

jojo12345
質問者

お礼

返信が遅くなり申し訳ございません 回答の通り、うまくいきました ありがとうございました