1

登録ユーザーの表:

  • id_user
  • id_location
  • 名前

場所の表:

  • id_location
  • 名前

各場所に何人のユーザーがいるかを知る必要があります。このようなもの:

  • ワシントン:455
  • フロリダ:185
  • テキサス:914

このアプローチで試してみましたが、結果には間違いなく合計エラーがあります。

SELECT location.name,user.id_user FROM user
INNER JOIN location ON user.id_location = location.id_location
WHERE user.id_profile !=0 GROUP BY location.id_location ORDER BY location.name
4

2 に答える 2

1
SELECT location.id_location, location.name, COUNT(user.id_user) AS UserCount
FROM user 
INNER JOIN location ON user.id_location = location.id_location 
WHERE user.id_profile !=0 
GROUP BY location.id_location, location.name
ORDER BY location.name 

id_location何らかの理由でロケーション名が同じでロケーション ID が異なる場合に備えて、クエリに を追加しました。

于 2012-08-06T14:35:33.733 に答える
1

あなたは本当に近かったです、あなたはただする必要がありますCOUNT

SELECT location.name, COUNT(user.id_user) UserCount 
FROM user
INNER JOIN location 
ON user.id_location = location.id_location
WHERE user.id_profile !=0 
GROUP BY location.name
ORDER BY location.name
于 2012-08-06T14:36:47.160 に答える