0

木が多いから森が見えないだけだと思います....

a) 2 つのテーブル:

  • ユーザー (ID、ユーザー名、...)
  • 購入 (ID、UserID、ItemID など)

b) すべてのユーザーが何回購入したかを示すクエリが必要です..

c) このクエリ:

SELECT user.*, COUNT(purchases.userid) AS Purchases  
FROM user, purchases  
WHERE user.id=purchases.user_id

結果は1つしかありません...そして、ユーザーが購入していない場合に0を取得する方法は?

事前にどうもありがとう

4

2 に答える 2

3
SELECT u.ID, 
       u.UserName, 
       (SELECT COUNT(1) FROM Purchases p WHERE u.Id=p.User_Id) AS Purchases
FROM User u
于 2012-11-14T07:46:48.657 に答える
1

このようにしてみてください:-

SELECT user.UserName, ISNULL(COUNT(purchases.userid),0) 
    AS Purchases1 FROM user AS user LEFT JOIN purchases AS purchases
    ON user.id=purchases.user_id
    Group by UserName
于 2012-11-14T07:42:29.517 に答える