• 締切済み

MysqlでSUMをつかうとおもうのですが、、、。

PHPとMySQLを使ってやっています。 以下のように予約テーブルとエージェントテーブルがあります。 予約テーブル                         予約ID  名前   電話番号 エージェント  人数    11  鈴木   ********   11    1     12  佐藤   ********   12    5     13  田中   ********   12    2     14  木村   ********   13    3     15  伊藤   ********   14    4     16  山田   ********   11    8   エージェントテーブル      エージェントID エージェント名       11  JTB         12  HIS         13  KNT         14  HNK         15  KKK   こちらのデータから以下のような検索結果を得たいのですが、 どうすれば宜しいでしょうか? 表示結果                           JTB  HIS  KNT  HNK  KKK      9    7    3    4    0 宜しくお願いします。

みんなの回答

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

ピボッドテーブルをつかってみるとよいでしょう create table ピボッドテーブル( ピボッドID int,JTB INT,HIS INT, KNT INT ,HNK INT,KKK INT); insert into ピボッドテーブル (id,JTB)values(11,1); insert into ピボッドテーブル (id,HIS)values(12,1); insert into ピボッドテーブル (id,KNT)values(13,1); insert into ピボッドテーブル (id,HNK)values(14,1); insert into ピボッドテーブル (id,KKK)values(15,1); 結果: SELECT SUM(JTB*人数) AS JTB ,SUM(HIS*人数) AS HIS ,SUM(KNT*人数) AS KNT ,SUM(HNK*人数) AS HNK ,SUM(KKK*人数) AS KKK FROM 予約テーブル INNER JOIN ピボッドテーブル ON エージェント = ピボッドID

関連するQ&A