0

私はmysql5.1を使用しています

これが私のリクエストです。0〜14歳で、アカウントを有効にしているユーザーの数を数えたいと思います。

SELECT COUNT( DISTINCT user.id ) AS user
FROM profile, user
WHERE (
profile.age
BETWEEN 0 
AND 14
)
AND user.enabled =1

状態は機能していuser.enabled=1ますが、profile.age BETWEEN 0 AND 14

4

1 に答える 1

2

2つのテーブルを結合していないため、2つのデカルト積を実行しているだけです。共通のキーでそれらを結合する必要があります。

このようなもの:

SELECT COUNT( DISTINCT user.id ) AS user
FROM profile join user on user.id=profile.user_id
WHERE (
profile.age
BETWEEN 0 
AND 14
)
AND user.enabled =1
于 2012-12-19T18:33:27.750 に答える