1

我有一个表我有 r 3 列comp_no comp_area comp_post_code

现在 comp_area 应该有那个地方的区域,比如多伦多、温哥华、温尼伯......

但是大约有 2,290 个条目是错误的,并且其中包含 comp_no 17310 111 Ave NW205 Main St依此类推。我想删除这 2,290 个条目并用 0 替换它们

我正在使用它来查找这些列

SELECT * 
FROM  `canada_database` 
WHERE comp_area !=  ''
AND comp_area NOT REGEXP  '^[[:alpha:]]'
ORDER BY slno ASC 
LIMIT 0 , 30

可以用mysql查询完成吗

4

2 回答 2

1
UPDATE `canada_database` 
SET comp_area =  '0'
WHERE comp_area !=  ''
AND comp_area NOT REGEXP  '^[[:alpha:]]'
于 2013-04-24T10:40:31.717 回答
1

试试这个查询

UPDATE `canada_database` 
SET comp_area = 0
WHERE id IN (
    SELECT GROUP_CONCAT(id)
    FROM  `canada_database` 
    WHERE comp_area !=  ''
    AND comp_area NOT REGEXP  '^[[:alpha:]]'
)
于 2013-04-24T10:38:49.320 回答