消除 Oracle 中的重复字符串
Eliminate Repeated Strings in Oracle
大家好,这是我在这里的第一个问题:)
- 我在table中有一条记录:“250MB RAW DATA 250MB RAW DATA”
- 我想将记录更改为:“250MB RAW DATA”
如何删除第二个“250MB RAW DATA”字符串?
但是我所有的记录都不是这样的。在这种情况下,我只需要更改重复的记录
感谢您的回答
您可以使用 case
表达式查看值是否重复:
select val,
(case when val = substr(val, 1, length(val) / 2) || ' ' || substr(val, 1, length(val) / 2)
then substr(val, 1, length(val) / 2)
else val
end) as half_val
from (select '250MB RAW DATA 250MB RAW DATA' as val from dual union all
select '250MB RAW DATA' from dual
) x;
大家好,这是我在这里的第一个问题:)
- 我在table中有一条记录:“250MB RAW DATA 250MB RAW DATA”
- 我想将记录更改为:“250MB RAW DATA”
如何删除第二个“250MB RAW DATA”字符串?
但是我所有的记录都不是这样的。在这种情况下,我只需要更改重复的记录
感谢您的回答
您可以使用 case
表达式查看值是否重复:
select val,
(case when val = substr(val, 1, length(val) / 2) || ' ' || substr(val, 1, length(val) / 2)
then substr(val, 1, length(val) / 2)
else val
end) as half_val
from (select '250MB RAW DATA 250MB RAW DATA' as val from dual union all
select '250MB RAW DATA' from dual
) x;