Помогите определить спамеров на форумах с помощью запроса SQL?

Я хотел бы иметь простой запрос, который я мог бы запустить к базе данных, чтобы возвратить отклонения во временном пороге, который пользователи публикуют на нашем форуме. Если у меня следующая структура базы данных:

ThreadId | UserId | PostAuthor | PostDate |
1          1000     Spammer      2010-11-14 02:52:50.093
2          1000     Spammer      2010-11-14 02:53:06.893
3          1000     Spammer      2010-11-14 02:53:22.130
4          1000     Spammer      2010-11-14 02:53:37.073
5          2000     RealUser     2010-11-14 02:53:52.383
6          1000     Spammer      2010-11-14 02:54:07.430 

Я бы хотел установить порог, чтобы сказать, например, что если 3 сообщения от одного и того же пользователя попадают в период времени в 1 минуту, автор может рассылать спам на форумах. В свою очередь, я хотел бы вернуть пользователя «Спамер» в запросе с количеством сообщений, сделанных за отведенное время.

В приведенном выше примере Спамер отправил 4 сообщения в течение 1 минуты, поэтому результат запроса может выглядеть следующим образом:

UserId | PostAuthor | PostCount | DateStart               | DateEnd
1000     Spammer      4           2010-11-14 02:52:50.093   2010-11-14 02:53:37.073

Мы приветствуем любые предложения в формате возвращаемых данных. Для меня формат важен не столько, сколько правильное определение злоумышленников на форуме.

6
задан George Johnston 15 November 2010 в 17:55
поделиться