CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Oracle >  基础和管理

我分组搜索每组的个数,但如果个数是0的话为什么就不显示出来的了

楼主philipsslg(刮开中大奖(█))2004-08-03 13:55:36 在 Oracle / 基础和管理 提问

怎样让个数为0的也,显示出来.  
        如  
        时间                       个数  
        2003-1                   2  
        2003-3                   3  
   
  2月个数为0   就不显示了,怎么解决?? 问题点数:20、回复次数:18Top

1 楼wylwyl1130(落雪山林)回复于 2004-08-03 13:58:57 得分 0

count()不计算null  
   
  select   count(nvl(字段,0))   from   table_name   group   by字段Top

2 楼philipsslg(刮开中大奖(█))回复于 2004-08-03 14:02:52 得分 0

好像不行啊,编都编不通了!!Top

3 楼jxc(GameHeart)回复于 2004-08-03 14:03:00 得分 0

表里没有数据,怎么可能分组出来呢?Top

4 楼philipsslg(刮开中大奖(█))回复于 2004-08-03 14:04:22 得分 0

那怎么办???Top

5 楼philipsslg(刮开中大奖(█))回复于 2004-08-03 14:05:04 得分 0

我想让2月显示0,有办法吗???Top

6 楼jxc(GameHeart)回复于 2004-08-03 14:10:21 得分 0

你先保证你查询出的结果集包括2月份的记录,分组就没有问题了.  
  这就涉及到外关联一个月份表的技术了,假如t2是个月份表(包含12个月)  
   
  select   to_char(t1.rq,'yyyy-mm')  
  from   t1,t2  
  where   to_char(t1.rq,'yyyy-mm')   (+)=   to_char(t2.rq,'yyyy-mm')Top

7 楼philipsslg(刮开中大奖(█))回复于 2004-08-03 14:11:12 得分 0

没人有办法,我已经连发三次了,再不帮我,我就沉下去了!!!Top

8 楼bzszp(SongZip)回复于 2004-08-03 14:17:41 得分 0

select   tt.coldate,   nvl(tt.snum,0)   from    
  (select   rownum   id   from   all_source   where   rownum<12)   t,  
  (select   coldate,sum(num)   snum   from   tbname   group   by   coldate)   tt  
  where   t.id=to_char(coldate,'mm')(+);  
  Top

9 楼bzszp(SongZip)回复于 2004-08-03 14:18:08 得分 0

select   tt.coldate,   nvl(tt.snum,0)   from    
  (select   rownum   id   from   all_source   where   rownum<=12)   t,  
  (select   coldate,sum(num)   snum   from   tbname   group   by   coldate)   tt  
  where   t.id=to_char(coldate,'mm')(+);Top

10 楼dinya2003(OK)回复于 2004-08-03 14:22:06 得分 0

根本就没记录,   所谓的空不等于零.   如果想实现必须加条件.Top

11 楼philipsslg(刮开中大奖(█))回复于 2004-08-03 14:24:22 得分 0

我是给定一个起始时间和结束时间然后在这段时间内按月分组,搜索人的个数,可是没有2月份的记录,怎么让二月份,显示为0   个??Top

12 楼philipsslg(刮开中大奖(█))回复于 2004-08-03 14:25:44 得分 0

bzszp   呢???   昨天好像也是你帮我的???  
  你信誉超过100,怎么超过去的??Top

13 楼bzszp(SongZip)回复于 2004-08-03 14:26:29 得分 20

知道你的意思   晕~  
  你吧  
  select     coldate,sum(num)     snum     from     tbname     group     by     coldate  
  换成你的语句就行了  
   
  Top

14 楼philipsslg(刮开中大奖(█))回复于 2004-08-03 14:33:11 得分 0

还是不行,加不加snum   一样的..Top

15 楼philipsslg(刮开中大奖(█))回复于 2004-08-03 14:44:52 得分 0

Oracle   帮助好像很差,连查   snum   有什么作用都不行...Top

16 楼bzszp(SongZip)回复于 2004-08-03 14:52:09 得分 0

老兄,snum是随便起了一个别名而已  
   
  不行可以找你的同事帮你修改Top

17 楼philipsslg(刮开中大奖(█))回复于 2004-08-03 15:12:32 得分 0

那你还是没有帮我解决问题啊,这样二月份如果没有数据的话0还是不会显示的.Top

18 楼philipsslg(刮开中大奖(█))回复于 2004-08-03 15:15:14 得分 0

我同事说搜不出来,直接在程序上判断算了.Top

相关问题

  • jsp+js:单选按钮、复选框有分组,个数不确定,如何验证每组是否选择?
  • 一个数据库搜索的问题
  • 一个数关于搜索的问题?
  • 如何用pb进行整个数据库搜索
  • FastReport中怎样设计单个数据源的分组报表?
  • 在Excel里面怎样统计满足搜索条件的数据的个数?
  • 如何取得分组后,每组的第一条纪录
  • 分组后再将每组的列的值连接起来
  • N个数字分组求和,和之间差最小的最优解算法
  • 如何针对多个数据表中同一个字段实现糊涂搜索?

关键词

  • 个数
  • rq
  • 显示
  • yyyy
  • mm
  • char
  • select

得分解答快速导航

  • 帖主:philipsslg
  • bzszp

相关链接

  • Oracle类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo