1

私は3つの列があるテーブルを持っていますcomp_no comp_area comp_post_code

現在、comp_area には、トロント、バンクーバー、ウィニペグなどのその場所のエリアが含まれている必要があります。

しかし、約 2,290 エントリ近くが間違っていて、その中に comp_no などがあり17310 111 Ave NWます205 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 id IN (
    SELECT GROUP_CONCAT(id)
    FROM  `canada_database` 
    WHERE comp_area !=  ''
    AND comp_area NOT REGEXP  '^[[:alpha:]]'
)
于 2013-04-24T10:38:49.320 に答える
1
UPDATE `canada_database` 
SET comp_area =  '0'
WHERE comp_area !=  ''
AND comp_area NOT REGEXP  '^[[:alpha:]]'
于 2013-04-24T10:40:31.717 に答える