1

(int)、(int)、および(datetime)という名前userRatingsのフィールドを持つテーブルがあります。userNumberuserRatinguserRatingDateTime

(int)、userGender (int)という名前userProfilesのフィールドを持つ 2 番目のテーブルがあります。userNumber

私がやろうとしているのはこれです:

userNumbers= 1 (女性を表す)の合計をすべてクエリしたいのですがuserRatinguserGender先週だけです。(つまり、1 週間以上前の評価は合計しないでください。)

私はこの問題に対してさまざまなアプローチを試みましたが、決して正しくないようです。現在、私の構文では、ある SELECT を別の SELECT にネストする必要がありますが、それは私が望むものを生成していません。

もう少しSQLの経験がある人がこれを手伝ってくれますか? ありがとう。

4

1 に答える 1

1

これを試して::

Select
ur.userNumber,
SUM(userRating) as totalRating,
userGender
from userRatings ur
inner join userProfiles up on (ur.userNumber  = up.userNumber )
where up.userGender=1
AND userRatingDateTime<DATEDIFF(now() INTERVAL 7 DAYS)

 GROUP BY  ur.userNumber
于 2013-10-27T12:30:36.310 に答える