首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

MySQL 批次更新:北京地址電話號碼加區號 010

     編輯:程式設計疑難解答

單一 SQL 完成

UPDATE `table_name`
SET `phone_num` = CONCAT('010', `phone_num`)
WHERE `address` = '北京';

關鍵點

  • CONCAT('010', phone_num):字串拼接,自動處理 NULL (結果為 NULL),若需保留 NULL 可加 IFNULL。
  • WHERE address = '北京':精確匹配。若地址欄位含「北京市、北京市朝陽區」等,改用 WHERE address LIKE '北京%'。
  • 執行前**先備份**或用 Transaction:
    START TRANSACTION; ...; COMMIT;

進階:避免重複加碼

若腳本可能重複執行,加條件防呆:

UPDATE `table_name`
SET `phone_num` = CONCAT('010', `phone_num`)
WHERE `address` = '北京'
  AND `phone_num` NOT LIKE '010%';

總結

MySQL 批次更新單表單欄位,CONCAT + WHERE 一行搞定。記得備份、防重複、驗證影響列數。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved