Mysql删除0并在联系号码中添加353

时间:2016-09-30 18:34:53

标签: mysql

我有很多像这样的10位数字

0987654321

我想要一个sql查询,它将删除0并添加353。

我只想用10位数字

是否有任何身体可以帮助我吗?

2 个答案:

答案 0 :(得分:0)

UPDATE tablename 
SET column = CONCAT('353', SUBSTRING(column, 2)) 
WHERE LENGTH(column) = 10;

这会将列''列'的内容设置为353 +<原始字符串,没有第一个字符>,对所有人而言只有10个字符。

答案 1 :(得分:0)

使用CASE表达式检查长度。

<强>查询

SELECT 
    `your_column_name`, 
    CASE WHEN LENGTH(`your_column_name`) = 10 
    AND LEFT(`your_column_name`, 1) = '0'
        THEN CONCAT('353', RIGHT(`your_column_name`, 9))
        ELSE `your_column_name` END as `new_column_name`
FROM `your_table_name`;

或者,如果您要更新该特定列。然后

<强>查询

UPDATE `your_table_name`
SET `your_column_name` = CONCAT('353', RIGHT(`your_column_name`, 9))
WHERE LENGTH(`your_column_name`) = 10
AND LEFT(`your_column_name`, 1) = '0';