我想找到所有类似
的记录 Transfer to CHK 9071 Confirmation# 1904952784
(无论数量多少)并剥离"确认#"部分;所以上面会变成
Transfer to CHK 9071
我试过这个,但语法错误:
update ZUSERPAYEE set ZNAME = left (ZNAME,length(ZNAME) - 24) where ZNAME like "%Confirmation# __________";
答案 0 :(得分:1)
这应该更可靠,因为它不要求确认号码是固定长度。还有LIKE的单引号。
update ZUSERPAYEE
set ZNAME = INSTR(ZNAME, 'Confirmation#') - 1)
where ZNAME like '%Confirmation# %'
答案 1 :(得分:1)
我建议您查看SUBSTRING_INDEX
功能。 (我知道在MySQL中可用,不确定SqlLite3)
e.g。
SUBSTRING_INDEX('Transfer to CHK 9071 Confirmation# 1904952784',' Confirmation#',1)
(该示例假设在确认#之前总是有空格,并且您也希望删除该空格。)
如果您只是想在##;确认#'开始时删除,请省略空格字符:
SUBSTRING_INDEX('Transfer to CHK 9071 Confirmation# 1904952784','Confirmation#',1)
对于给出的示例,将留下尾随空格。可以通过将表达式包装在
中来删除尾随空格TRIM(TRAILING ' ' FROM expr)
答案 2 :(得分:0)
尝试使用单引号而不是双引号