同じ数値のデータを抽出したい(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回まで
  • 13歳以上
  • 登録:2015/03/21 23:13:04
  • 終了:2015/03/23 13:57:39

ベストアンサー

id:a-kuma3 No.1

a-kuma3回答回数4412ベストアンサー獲得回数18032015/03/21 23:44:00

ポイント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

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

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

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

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

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません