我知道我可以使用以下查询选择包含非英文字符的所有行:
SELECT * FROM user WHERE NOT username REGEXP '[A-Za-z0-9]';
如何立即使用单个查询删除它们?
我的搜索结果超过15000行,因此我无法选择并删除它们30到30需要花费很多时间。
答案 0 :(得分:1)
如果SELECT
语句找到了您要查找的行,则在大多数情况下,您可以在FROM
之前删除该部分,并将其替换为DELETE
。
以您的示例为例,这将是
DELETE FROM user WHERE NOT username REGEXP '[A-Za-z0-9]';