aa 111 14:00 3
cc 101 14:00 3
dd 150 14:00 3
aa 120 14:05 2
bb 130 14:05 2
dd 121 14:05 2
aa 180 14:10 1
bb 120 14:10 1
ee 101 14:10 1
當我第四次匯進來的時候..14:00的資料timer就會變4..
這是我要方便區分用的..
所以當我要計算它有沒有連續出現五次的時候..
我只要對它
INSERT into wrong SELECT name,total,time,timer,COUNT( name )FROM end
WHERE timer <6 GROUP BY IPaddr HAVING COUNT( name ) =5
它就會計算出當name在timer1~5時COUNT的次數等於5就表示他連續..
我自動把它寫進wrong資料表..
現在問題來了..
當我設timer<6時~我count只能設5就是計算它5次連續..
可是當它要是6次以上時~我不知道怎麼自動去判斷它到底這個name的人
重覆出現了幾次..
我不知道該怎麼去調整我where的條件= =才能算的出來XD
抱歉~為了解釋寫了好大一篇~但願有詳細>"<..
謝謝><..
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.85.36.57
重頭解釋篇~+_+~
我有一個資料表是統計每五分鐘會匯進一次資料的..
假設它的欄位有..
(資料表名稱:end)
name total time timer
timer欄位是方便我區分每不同時間匯進來的次數用的..預設為0
name是固定那些人~可是我每次的total值不一樣~
假設我每五分鐘一次匯進新的篩選後資料表到end..
比方說我匯十次..在這十次中~都是同一個班上的人..
只是我要把該次total>100挑出來寫入end資料表..
於是我對它進行..
$str=mysql_query("INSERT into end SELECT * FROM t1 WHERE total>100");
醬子..我的end資料表每五分鐘會有篩選出來的資料加進來..
我想做的是..從end資料表中~算出有連續出現五次的人..
所以我在上面每次寫入end資料表的時候..
我會對著timer+1..(另開一個php執行它..在寫入end一次後就執行一次)
$up=mysql_query("UPDATE end SET timer=timer+1");
所以說當我寫進三次的時候它會..
name total time timer