举例:
0101
1010这是2行内容。
现在想合并成 1111
如何实现?同理 1000 合并 1000 结果 1000就是 一共4个字符,如果个位有一个为1 得到新数的个位就为1 同理到 百位 ,千位,万位。
解决方案 »
- 新手请教:Oracle服务器隔几天Down一次,怎么分析?
- 求助:oracle 查询问题
- 求把UNION ALL 的SQL语句改得高效些
- 如何优化这样的查询语句
- 存储过程中出错的时候有类似SQLSERVER里的ERROR CODE吗?
- oracle9i 的启动并不需要任何密码,不是很不安全吗?
- 如何指定特定表空间中的表!(一旦好使,立刻给分)
- SYSTEM或DBA如何对普通用户进行相互授权?
- 请大家给推荐本用VC对Oracle编程的书……
- 配置oem問題,orcleORAhome81ManagerServer服務不能啟動!!急急救!
- 一个sql语句效率优化
- 想问一个关于number类型的小问题
with a as(
select '0101' z from dual
union all
select '1010' z from dual
union all
select '1010' z from dual
union all
select '1111' z from dual
union all
select '0000' z from dual
)select replace(replace(replace(replace(replace(replace(replace(replace(to_char(sum(to_number(z))),'2','1'),'3','1'),'4','1'),'5','1')
,'6','1'),'7','1'),'8','1'),'9','1') from a;
( select '0001' A from dual
union all
select '1100' from dual
)
select replace(max(substr(sys_connect_by_path(rm,','),2)),',','')
from
(
select ( case when substr(a,level,1)=0 then 0 else 1 end) rm,rownum rn
from
(select sum(a) a from a)
connect by level<=length(a)
)
start with rn=1 connect by rn=rownum ; --result:1 1101