看板 PHP 關於我們 聯絡資訊
重頭解釋篇~+_+~ 我有一個資料表是統計每五分鐘會匯進一次資料的.. 假設它的欄位有.. (資料表名稱: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 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