こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

MySQLで同一カラムからのデーターの取り出し方法

お世話になります。
MySQL5.6使用です。

同一カラムからのデーターの取り出し方法について教えてください。


下記のようなテーブル(tb1)があります。


 item  date cnt
 aaa  10  100
 bbb  10  100
 ccc  10  100
 aaa  11  90
 bbb  11  80
 ccc  11  70
 aaa  12  60
 bbb  12  50
 ccc  12  40


date(列)が10の、cnt(列)の抽出は下記でできます。

select item,cnt from tb1 where date=10;

<結果>
 item  cnt
 aaa  100
 bbb  100
 ccc  100

同じように、date(列)が11の、cnt(列)の抽出は下記でできます。

select item,cnt from tb1 where date=11;

<結果>
 item  cnt
 aaa  90
 bbb  80
 ccc  70

この二つのコードを同時に行い
1つの表にする方法が知りたいです。

結果として得たい表は下記のとおりです。

    cnt(date=10) cnt(date=11)
 aaa  100      90
 bbb  100      80
 ccc  100      70

(※カラム名はasで変更できることは理解しています。)

お手数をお掛けしますが、
よろしくお願いします。

投稿日時 - 2016-12-14 09:24:46

QNo.9268032

困ってます

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

1度のSELECTで得る事は可能ですが、どちらかというと個別に取り出してプログラム側で処理する方が汎用的だと思いますね。
==========
SELECT
 d10.item,
 d10.cnt AS `cnt(date=10)`,
 d11.cnt AS `cnt(date=11)`
FROM
 ( SELECT item, cnt FROM tb1 WHERE date=10 ) d10,
 ( SELECT item, cnt FROM tb1 WHERE date=11 ) d11
WHERE
 d10.item = d11.item
;

投稿日時 - 2016-12-14 09:46:40

お礼

t_ohta さま

お礼の返信をしたつもりだったのですが
反映されていませんでした。

たいへお礼が遅くなり申し訳ございません。

お蔭さまでSQLも扱えるようになってきました。

今後ともよろしくお願いします。

投稿日時 - 2017-06-27 03:38:19

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問