有个A表 有字段date sal
比如
select * from A
然后我有些日期没有数据 比如说10.1号有数据 10.2没 10.3有
查出来就是
10.1 199
10.3 222
我想要的结果是
10.1 199
10.2 0
10.3 222
就是如果某天没记录也要给个默认值
比如
select * from A
然后我有些日期没有数据 比如说10.1号有数据 10.2没 10.3有
查出来就是
10.1 199
10.3 222
我想要的结果是
10.1 199
10.2 0
10.3 222
就是如果某天没记录也要给个默认值
解决方案 »
- 在plsql的匿名块中,能否嵌入一个函数或存储过程
- Win7 32位的操作系统下的ORACLE 11G R2安装
- 服务器down机
- VC.NET 2005 下面,如何添加ORACLE 10g的orasqx10.lib到工程?
- 表的导出导入遇到字符集的问题
- 如何将一个表设为readonly?
- 在oracle9i里能不能对某一个表进行增量备份?
- 有没有数据库文档的自动生成工具?求数据库文档生成器1。3注册吗!立刻给分
- 偶的数据库想存放日文等多国文字,不知道怎么建立数据库?
- Oracle Provider for oleDb坏了,怎么办??
- oracle中在一个存储过程中完成:创建临时表>>插入数据>>查询数据 如下.菜菜求大大们的帮忙____
- oracle的链接问题 求高手帮忙解决
你要有个范围吧,
加入这一个月内的,
可以通过SYSDATE进行一天一天的判断去找,没有返回0
select 开始日期+rownum-1 from dual connect rownum<=结束日期-开始日期+1
构造连续日期,然后左连接你的A表
SELECT TO_CHAR(T.DUAL_COL1, 'mm.dd'), NVL(TEST1.sal, 0)
FROM TEST1,
(SELECT TO_DATE('10.1', 'mm.dd') + ROWNUM - 1 AS DUAL_COL1
FROM DUAL
CONNECT BY ROWNUM < 30) T
WHERE T.DUAL_COL1 = TO_DATE(COL1(+), 'mm.dd')
ORDER BY T.DUAL_COL1