次の構造は、このクエリを想定する方法です。
user_info
- id int(11)
- email varchar(255)
- regdate int(11)
statistics
- id int(11)
- playerid int(11)
- timetopay int(11)
私がやりたいのは、user_infoからすべての一意の電子メールを取得してから、同じクエリでstatistics.timetopay-user_info.regdateの平均を取得することです。
SELECT AVG(s.timetopay-ui.regdate) as time_amount FROM user_info ui
LEFT JOIN statistics s ON ui.id=s.playerid
WHERE s.timetopay>'0' GROUP BY ui.email ORDER BY ui.id DESC LIMIT 1
うまくいけば、上記のスニペットから要点がわかります。私は、ユーザーがお金を払うのにかかる平均時間を計算しようとしていますが、それは彼らがお金を払っている場合に限られます。
上記のクエリは、現時点ではうまく機能しません。
ユーザーは複数のアカウントを持つことができるため、groupbyui.emailを使用する必要があります。1つのクエリでこれを実現する方法を知っている人はいますか?