MySQLの質問です。


やや複雑なSQLになります。

詳細:http://webtomake.hatenablog.com/entry/2016/06/09/124724

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

回答1件)

id:a-kuma3 No.1

回答回数4971ベストアンサー獲得回数2153

ポイント200pt

もっと、すっきりと書けそうな気もしますが、こんな感じでとりあえず動きます。

select A.商品名, P2.商品名
    from
        (
        select C1.customer_id, P.product_id, P.商品名
            from
                customer_purchase C1
                left join product P on P.product_id = C1.product_id
            where P.商品名 like '%わせ%'
        ) A
        left join customer_purchase C2 on C2.customer_id = A.customer_id
        left join product P2 on P2.product_id = C2.product_id
    where P2.product_id <> A.product_id
    group by A.product_id, P2.product_id

SQL Fiddle で試してみたのがこちら。
http://sqlfiddle.com/#!9/3e8bc/1


「アロマA」と「ほげリン」の product_id が重複してて、「ん?」ってなったのは内緒です :-)

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

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

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

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

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