我有一个名为“tel”的列。此列有一些以(例如)“0511”开头的记录,我想将其更改为“0513”。什么是正确的查询?
答案 0 :(得分:0)
您可以使用替换功能
UPDATE table SET tel= replace( tel, '0511', '0513' ) WHERE tel LIKE '0511%';
检查SQLite核心功能here
修改强> 如果您的电话号码的前4位数字后面有匹配。 例如051121505113
UPDATE table SET tel= replace(substr(tel,1,5), '0511', '0513' )||substr(tel,5)
WHERE tel LIKE '0511%';
答案 1 :(得分:0)
UPDATE table
SET tel = REPLACE(tell, '0511', '0513')
WHERE tel like '%0511%'
答案 2 :(得分:0)
如果存在' 0511'如果字符串你可以确保只在字符串的开头替换0511,则存在于其余部分:
UPDATE [table]
SET [tel] = CASE WHEN
instr([tel], '0511') = 1 THEN
'0513' || substr([tel], 4)
ELSE
[tel]
END
WHERE [tel] LIKE '0511%';