我有一臺服務器在每次訪問時向數據庫添加多條記錄。服務器在每次訪問的2-5個記錄之間完成了它。所有的數據都是相同的期望時間戳。我想每次訪問只保留1條記錄。並刪除其他記錄。在mysql中刪除時間戳間隔小於5秒的重複行
之前:
+----+----------------------+------+--------+
| id | timestamp | user | action |
+----+----------------------+------+--------+
| 1 | 01-01-01-16 03:02:05 | 5 | visit |
| 2 | 01-01-01-16 03:02:06 | 5 | visit |
| 3 | 01-01-01-16 03:02:05 | 6 | watch |
| 4 | 01-01-01-16 03:02:06 | 6 | watch |
| 5 | 01-01-01-16 03:04:05 | 9 | visit |
| 6 | 01-01-01-16 03:04:06 | 9 | visit |
| 7 | 01-01-01-16 03:04:07 | 9 | visit |
| 8 | 01-01-01-16 03:04:35 | 2 | see |
+----+----------------------+------+--------+
預期結果:
+----+----------------------+------+--------+
| id | timestamp | user | action |
+----+----------------------+------+--------+
| 1, | 01-01-01-16 03:02:05 | 5 | visit |
| 3, | 01-01-01-16 03:02:05 | 6 | watch |
| 4, | 01-01-01-16 03:02:06 | 6 | watch |
| 5, | 01-01-01-16 03:04:05 | 9 | visit |
| 8, | 01-01-01-16 03:04:35 | 2 | see |
+----+----------------------+------+--------+
換句話說:正如所看到的,線1,2是相同的。同一個用戶,並且只有一秒之間。所以我刪除線2.4,我不碰線,因爲它不是一個訪問
我有查詢的開頭:delete from table where id in(...)
查看http://sensefulsolutions.com/2010/10/format-text-as-table.html創建更好的表 –
那麼訪問多少時間是考慮同一條記錄? –
最多5秒 – Aminadav