60秒でのデータの数を数えるのMySQL

最近のプロジェクトは、このような要望を持っています

IP番号60は、5よりも統計に懸濁されています

方法は以下の通りです

1  SELECT 
2    カウント値(ID)をAS NUM
 3  FROM 
4    ddos_network_ipstatus
 5  WHERE 
6    ip_block_time BETWEEN DATE_ADD(NOW()、INTERVAL -  60秒)AND NOW()
 7  HAVING 
8    NUM >  5

 

注記

1つの SELECT 
2    COUNT(ID)AS NUM - 60秒以内に統計的データ
3。 FROM 
4。    ddos_network_ipstatus - 
5  。6    ip_block_time BETWEEN(NOW()、INTERVAL DATE_ADD - 60 SECOND)   AND NOW()
 7。-   ip_block_time--フィールドは、(間隔)(今DATE_ADD、フィルタリングされる時間を示している - - 60秒) )(ここで、現在時刻を示すマイナス60 -現在の時刻を表す。8 HAVING 9。    NUM > 5。 ; - クエリ条件は、ここでは(スクリーニング以上の5を表すデータが記録されます)
    
  
 

おすすめ

転載: www.cnblogs.com/chming/p/12164584.html