一些数据库清理问题

时间:2011-09-14 08:39:43

标签: mysql sanitization

我们有一个约250k条记录的数据库,我们想要清理这些记录,还有一些我不知道如何写的查询:

*清除包含子字符串的单词,例如,如果一个单词包含子字符串“cache”,则删除整个单词,例如:

"cachelkjdlkjalkjs here happened something" => "here happend something"

*删除包含2位以上数字的行,但有几种情况除外,例如:允许使用3位数字。

这样:

"365 days a year, we do that" => Do nothing
"798 is a random number" => DELETE

*检查单词数量,并删除少于X个单词的记录。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:1)

首先备份数据库!

我会首先绘制一个单词列表(以及数字0 ... 99,365以及您想到的任何其他单词)。然后我会创建一个脚本(yor chosing的语言)来遍历行。对于每一行检索单词,puncuation和数字,然后检查以确保它们有效。对于有效的重建条目并吐出不匹配的位。从不匹配的比特我只是看看,以确保你没有遗漏任何东西。

我会先以被动模式(即不要更改数据库)执行此操作,直到您对事情没问题感到高​​兴为止。

希望有所帮助。