MYSQL數據庫中替換數據每個開發者可能都遇到過,下面小編為大家講解mysql中替換字段數據最全用法
1、在字段前添加前綴

UPDATE 表A SET 字段B = CONCAT( '100-', 字段B);

2、把 `表 A` 的 `字段B` 中的 ‘aaa 批量替換成 ‘bbb’

UPDATE 表A SET 字段B = replace(字段B, 'aaa', 'bbb');

3、替換空值 (NULL)為空字符串

UPDATE `table` SET `column` = '' WHERE `column` IS NULL;

4、刪除所有的空格

UPDATE 表A SET 字段B = TRIM(字段B);

5、刪除所有飽含 ‘[‘ 或者 ‘]’ 或者 ‘.’ 的字符

UPDATE 表A SET 字段B = REPLACE(字段B, '[', '') WHERE INSTR(字段B, '[' ) > 0;

6、替換所有含中文’-‘的為英文’-‘

UPDATE 表A SET 字段B = REPLACE(字段B, '-', '-') WHERE INSTR(字段B, '-') > 0;

7、將所有的 ‘年’, ‘月’ 都替換成 ‘-‘

UPDATE 表A SET 字段B = REPLACE(字段B, '年', '-') WHERE INSTR(字段B, '年') > 0;
UPDATE 表A SET 字段B = REPLACE(字段B, '月', '-') WHERE INSTR(字段B, '月') > 0;

8、將所有 ‘2014-04-‘ 這種類型的替換成 ‘2014-04-01’

UPDATE 表A SET 字段B = CONCAT( 字段B, '01')
WHERE SUBSTRING_INDEX(字段B, '-', -1) = ''
AND LENGTH(字段B) > 0 AND LENGTH(字段B) > 5;

9、將所有 ‘2014-‘ 這種類型替換成 ‘2014-01-01’

UPDATE 表A SET 字段B = CONCAT(字段B, '01-01')
WHERE INSTR(字段B, '-') > 0 AND LENGTH(字段B) = 5;

10、將所有包含 ‘-‘,但是位數小于 8 的改成追加 ‘-01’

UPDATE 表A SET 字段B = CONCAT( 字段B, '-01')
WHERE INSTR(字段B, '-') > 0 AND LENGTH(字段B) < 8;

11、將所有 ‘2014’ 這樣的改成 ‘2014-01-01’

UPDATE 表A SET 字段B = CONCAT(字段B, '-01-01')
WHERE INSTR(字段B, '-') = 0 AND LENGTH(字段B) = 4;

12、最后,將所有 ‘2014-01-01’ 格式化成 ‘2014年01月’

UPDATE 表A SET 字段B = DATE_FORMAT(字段B, '%Y年%m月') WHERE INSTR(字段B, '-') > 0;
本站部分內容來源互聯網,如果有圖片或者內容侵犯了您的權益,請聯系我們,我們會在確認后第一時間進行刪除!