求人サイトがあります...ユーザーが過去7日間に投稿した広告の数をカウントするSQLクエリを作成しようとしていますが、問題があります...
たとえば、ユーザープロファイルに次のようなものを表示しようとしています。[ユーザー名]は過去7日間に30件の広告を投稿しました
これが私のSQLクエリです->
SELECT COUNT(*)
FROM table_name
WHERE user_id = '[user_id]' AND created_date > NOW() - INTERVAL 7 DAY
したがって、私の場合、「table_name」にはすべてのユーザーからのすべての広告が含まれ、「user_id
='[user_id]'」によってユーザーAに広告の数を表示し、ユーザーBに広告の数などを表示します。
したがって、このクエリは機能し、広告の数を正しくカウントしますが、たとえば、ユーザーがサイトに入力し、DELETEの1,2または任意の数の広告を削除した場合、この数は「[ユーザー名]が投稿した30」から「マイナス」になります。過去7日間の広告」
- たとえば、ユーザーが過去5日間に20件の広告を投稿したとします-正しい結果は、[ユーザー名]が過去7日間に20件の広告を投稿したことです。
- これで、ユーザーはサイトにアクセスして、の4つの広告を削除します-結果は、[ユーザー名]が過去7日間に16の広告を投稿したことです。
誰かが私を助けてくれますか、クエリに何を追加すれば、広告が削除された場合でも、カウントに正しい数の広告(私の場合は20個の広告)が表示されます。
ありがとう乾杯