0

私はSQLを初めて使用するので、特定のショップのユニークな顧客を見つけるためのクエリを作成したいと思います。例:ショップSH1には10人の顧客が登録されており、10〜3人の顧客が他のいくつかのショップにも登録されています。SH1を購入するユニークな7人の顧客を返すクエリが必要です。

ShopIdとは両方ともCustomerId同じテーブルに格納されているため、サブクエリが必要になると思います。

ありがとう、マユール

サンプルデータ:

ShopId CustomerId

  • Shop1 Cust001
  • Shop1 Cust002
  • Shop1 Cust003
  • Shop2 Cust002
  • Shop3 Cust004
  • Shop4 Cust002

上記の例で、ショップID Shop1のクエリを実行すると、他のショップIDとリンクされているため、Cust002ではなくShop1に固有のCust001、Cust003を取得する必要があります。

4

3 に答える 3

1

登録している店舗も知りたい方

SELECT CustomerID, 
    ShopID
    FROM shop
    WHERE CustomerID IN (
        SELECT CustomerID
            FROM shop 
            GROUP BY CustomerID 
            HAVING COUNT(ShopID) = 1)
于 2013-03-13T09:12:26.777 に答える
1

私はあなたがこれを行うことができると思います

select distinct customerId from tablename where shopId = 'SH1' and customerId not in (select customerId from tablename where shopId<>'SH1');
于 2013-03-13T08:59:55.980 に答える
0

ユニークな顧客が必要です

SELECT CUSTID FROM SHOP GROUP BY CUSTID HAVING( COUNT(SHOPID) = 1)
于 2013-03-13T09:06:59.767 に答える