我在我的數據庫中有一個表來存儲用戶數據。我在代碼中發現了一個缺陷,即將數據添加到此表數據庫,如果發生網絡超時,代碼會使用先前用戶的數據更新下一個用戶的數據。我已經解決了這個缺陷,但我需要清理數據庫。我添加了一個標誌來指示需要忽略的行,並且我的目標是將這些標誌相應地標記爲重複項。在某些情況下,重複值可能實際上是合法的,所以我更有興趣找到具有相同數據的多個用戶(即u> 2)。從mySQL數據庫表中刪除重複的用戶條目
下面是一個例子(表名=數據):
ID ---- ---- USER_ID DATA1 ---- ---- DATA2 DATA3 ---- -----日期時間------國旗
1 ----- usr1 -------- 3 ---------- 2 --------- 2-- ------- 2012-02-16 ..----- 0
2 ----- usr2 -------- 3 ---------- 2 --------- 2 --------- 2012-02-16 ..----- 0
3 ----- usr3 ------ --3 ---------- 2 --------- 2 --------- 2012-02-16 ..----- 0
在這種情況下,我想將1和2標記標記爲1(表示忽略)。由於我們知道usr1是原始數據點(假設最早的日期在列表中較早)。
此時表中有太多條目,我不確定識別具有重複條目的用戶的最佳方式。
我正在尋找一個mysql命令來識別問題數據,然後我就可以標記條目。有人能指引我朝着正確的方向嗎?
感謝您的回覆。這看起來是正確的方法。我能夠看到一些重複但不在用戶之間 - 我在同一用戶中看到重複的數據,這對我來說沒問題;我更關心不同的用戶在同一時間段內擁有相同的數據(在幾分鐘到45分鐘內)。這可以輕鬆完成嗎? – user836200 2012-02-16 17:36:31
嗨,我更新了我的答案,希望它可以幫助你。 – biziclop 2012-02-16 18:55:14
謝謝!這非常有幫助! – user836200 2012-02-17 02:41:10