同じ数値のデータを抽出したい(SQL)


以下のテーブルがあります。

year|company|sales
22|トヨタ|100
22|日産|50
22|ダイハツ|70
22|ホンダ|35
23|トヨタ|100
23|日産|60
23|ダイハツ|70
23|ホンダ|40

この中で、22年と23年の売上(sales)が同じ会社のみを抽出するSQLは可能でしょうか?

【求める結果】
以下のいずれか。

year|company|sales
22|トヨタ|100
22|ダイハツ|70
23|トヨタ|100
23|ダイハツ|70

year|company|sales
22|トヨタ|100
23|トヨタ|100
23|ダイハツ|70
22|ダイハツ|70

回答の条件
  • 1人1回まで
  • 登録:
  • 終了:2015/03/23 13:57:39
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:a-kuma3 No.1

回答回数4973ベストアンサー獲得回数2154

ポイント100pt

そのテーブルの名前が ttt だとして、こんな感じで抽出できます。

select t1.*
    from ttt t1, ttt t2
    where t1.sales = t2.sales and t1.year != t2.year
    order by t1.year

もしくは、order by t1.company で。

http://sqlfiddle.com/#!9/67a86/4

他1件のコメントを見る
id:a-kuma3

あちゃあ。

2015/03/22 17:28:41
id:jamis

回答ありがとうございます。
お二方の合わせ技で思っていた形が実現できました。

2015/03/23 13:57:24

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません