WITH tab AS( SELECT 'H-14342' id FROM dual UNION ALL SELECT 'H14342' FROM dual ) SELECT CASE WHEN InStr(id,'H-')>0 then '手动' else id END id FROM tabID ------- 手动 H14342
update tbname set col='手动' where col like '%H-%';
if instr('H-1234','H-',0)>0 then ...
update tbname set col='手动' where col like '%H-%';
很多方法,一条简单的SQL语句,就可以实现了。
--paddy的不就是那样 WITH tab AS( SELECT 'H-14342' id FROM dual UNION ALL SELECT 'H14342' FROM dual ) --以上为提供数据的语句 SELECT id,(CASE WHEN InStr(id,'H-')>0 then '手动' else id END) newid FROM tab ID NEWID ------- ------- H-14342 手动 H14342 H14342
case when instr(col,'H-')>0 then '手动' else col end --or decode(sign(instr(col,'H-')),1,'手动',col)
with tab as ( select 'H-14342' name from dual ) select decode(instr(name,'H-'),0,name,'手动') from tab
WITH tab AS(
SELECT 'H-14342' id FROM dual
UNION ALL
SELECT 'H14342' FROM dual
)
SELECT CASE WHEN InStr(id,'H-')>0 then '手动' else id END id FROM tabID
-------
手动
H14342
...
--paddy的不就是那样 WITH tab AS(
SELECT 'H-14342' id FROM dual
UNION ALL
SELECT 'H14342' FROM dual
)
--以上为提供数据的语句
SELECT id,(CASE WHEN InStr(id,'H-')>0 then '手动' else id END) newid FROM tab
ID NEWID
------- -------
H-14342 手动
H14342 H14342
--or
decode(sign(instr(col,'H-')),1,'手动',col)
with tab as
(
select 'H-14342' name from dual
)
select decode(instr(name,'H-'),0,name,'手动') from tab
decode(instr(name,'H-'),0,name,'手动')
------
手动