替换mysql中从number开始的列数据


Replace column data start from number in mysql

我有一个表i,其中有3列comp_no comp_area comp_post_code

现在comp_area应该有那个地方的面积,比如多伦多、温哥华、温尼伯……

但近2290个条目是错误的,其中有comp_no,如17310 111 Ave NW, 205 Main St等。我想删除这2290个条目并用0

代替它们

我用这个来查找这些列

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

可以用mysql query

UPDATE `canada_database` 
SET comp_area =  '0'
WHERE comp_area !=  ''
AND comp_area NOT REGEXP  '^[[:alpha:]]'

试试这个查询

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:]]'
)