我有一个名为Column1的列,看起来像这样:
ABCABC321 ABCABC213 ABC478 ABC474
这是一个查询,显示所有'ABC'的额外字符
select * from TABLE where Column like 'ABCABC%';
这是输出:
ABCABC321 ABCABC213
如何从上面使用的查询中删除所有记录的多余“ ABC”?
这是所需的输出:
ABC321 ABC213 ABC478 ABC474
UPDATE your_table SET your_column = RIGHT(your_column, CHAR_LENGTH(your_column) - 3) WHERE your_column LIKE 'ABCABC%';
使用大小写条件和SUBSTRING函数从第4个字符读取字符串值(忽略前3个字符:]
select case when Column1 like 'ABCABC%' then substring(Column1, 4) else Column1 end as Column1 from Table1
请参见db-fiddle上的恶魔