Oracle 补空查询/补零查询
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle 补空查询/补零查询相关的知识,希望对你有一定的参考价值。
假设查询1月1号至1月10号的数据,但是数据库里,没有5号和7号数据,但是我希望查询出来后,5号和7号也显示出来,但数据为零就行了,各位大神知道该怎么查询吗。
补空查询和补零查询是两个不同概念。
补空查询是将空格替换成特定字符,可用replace函数。
如test表中有如下数据:
现在要将str字段内的空格替换成s,可用如下语句:
结果:
补零查询分为两类,一类是左补0,一类是右补0。左补0用lpad,右补零用rpad。
test表中数据如下:
现在要求将str字段左补0,将其长度保持在10位。可用以下语句:
结果:
现在要将str字段右补0,将其长度保持在10位。可用以下语句:
select rpad(str,10,\'0\') from test;结果:
定义两个变量 start_dt,end_dt
while start_dt<=end_dt LOOP
v_sql := 'insert into t_date(static_date) values ('''||start_dt||''')';
execute v_sql;
start_dt := start_dt+1;
END LOOP;
后面就查询了
select * from 表,t_date d where 表.日期=d.static_date(+)本回答被提问者和网友采纳
以上是关于Oracle 补空查询/补零查询的主要内容,如果未能解决你的问题,请参考以下文章