3

システム全体のログイン スロットリングを実装しようとしていますが、過去 3 か月間の 1 日あたりのログイン失敗回数の平均を計算する必要があります。

現在、ログインに失敗するたびにタイムスタンプ付きのレコードを挿入しています。MySQLでこれを行うにはどうすればよいですか?

よろしくお願いいたします。

4

1 に答える 1

2
SELECT AVG(cnt)
  FROM (SELECT COUNT(*) AS cnt
          FROM mytable
         WHERE `date` BETWEEN DATE_SUB(NOW(), INTERVAL 3 MONTH) AND NOW()
      GROUP BY DATE(`date`)) x

タイプのmytableフィールドを持つテーブルがあると仮定すると、またはdatedatedatetimetimestamp

于 2011-02-17T23:55:56.503 に答える