当它与某个字符串匹配时,我正在尝试从数据库中替换整个字段。
例如: TABLE_FRUITS包含
ID NAME
---------------
1 APPLE
2 ORANGE
3 PASSIONFRUIT
4 BANANA
5 DRAGONFRUIT
6 KIWI
7 STRAWBERRY FRUIT
现在,如果我尝试选择列NAME,并且如果某个字段包含字符串“ FRUIT”,则应将整个字段替换为另一个字符串,例如“ SAMPLE”。
预期结果:
select NAME from TABLE_FRUITS;
将返回:
APPLE
ORANGE
SAMPLE
BANANA
SAMPLE
KIWI
SAMPLE
我不确定是否应该使用replace或substr / instr。
答案 0 :(得分:1)
如果您使用的是MySQL,则可以使用类似的
SELECT IF(NAME LIKE '%FRUIT%', 'SAMPLE', NAME) AS NAME FROM TABLE_FRUIT
在其他各种SQL中,您可能需要使用CASE
表达式:
SELECT CASE WHEN NAME LIKE '%FRUIT%' THEN 'SAMPLE' ELSE NAME END AS NAME FROM TABLE_FRUIT
答案 1 :(得分:1)
在以下情况下的用例:
select case when name like '%fruit%' then 'Sample' else name end from tablename
答案 2 :(得分:0)
您可以使用CASE
select case when name like '%FRUIT%' then 'sample' else name end
from table_fruit