sql >> データベース >  >> RDS >> Mysql

2つの特定の製品を注文した顧客を見つけるためのMySQLクエリ

    このタイプのクエリは次のように行います:

    SELECT COUNT(DISTINCT t1.userid) AS user_count
      FROM TRANSACTIONS t1
      JOIN TRANSACTIONS t2 USING (userid)
     WHERE t1.product_id = 'prod1' 
       AND t2.product_id = 'prod2';
    

    GROUP BY ソリューション表示 by @najmeddineも必要な答えを生成しますが、MySQLではうまく機能しません。 MySQLはGROUPBYを最適化するのに苦労しています クエリ。

    EXPLAIN <を使用して最適化を分析し、両方のクエリを試す必要があります。 / code> 、また、いくつかのテストを実行し、データベース内のデータの量を考慮して結果の時間を計ります。



    1. oraclesqlからpandasdfへのデータのロードを高速化する方法

    2. ElectronでMySQLデータベースにアクセスする

    3. ユニットテストの使用が高品質アーキテクチャへの大きな投資である理由

    4. mysql致命的なエラー:バッファプールにメモリを割り当てることができません