从数据库里查一周的数据,假如有2天是没有记录的,怎么找出是周几没有记录?查一个月的数据,其中有几天是没记录的,怎么找出是哪几号没记录?算法时间

解决方案 »

  1.   

    你说的是sql语句?如果是程序,那就按时间统计计数,为0就没有记录。
      

  2.   

    按楼上查出没有记录是哪天后,
    用Calendar类的方法判断这天是星期几就好了
      

  3.   

    没有时间字段吗?转换成只显示到日,group by 一下,要我就这么干。。
      

  4.   

    有时间字段,问题是那一天就是没有记录,  比如 2月 1 2 3   5   9 日,group by 也出不来4 6 7 8日。
      

  5.   

    先用时间建一个表,只有一个字段时间序列。
    然后用你的数据表的时间进行 trunc(date) 分组,再用那个时间表左连接,若没有数据的天,会是空的。
      

  6.   

    select decode(length(rownum), 1, '0' || rownum, 2, rownum)
      from dual
    connect by rownum <= (select to_char(last_day(sysdate), 'dd') from dual)minus
    select to_char(startdate, 'dd') from ddd假设你的表是ddd,你的日期字段是startdate;以上为没有数据的日期天数
      

  7.   

    上面的是拿当月所有天数比较,如果是这月今天以前没有数据的sql如下:
    select decode(length(rownum), 1, '0' || rownum, 2, rownum)
      from dual
    connect by rownum <= (select to_char(sysdate, 'dd') from dual)minusselect to_char(startdate, 'dd') from ddd
      

  8.   

    SELECT DATE_FORMAT(created, '%Y-%m-%d')
    把你的日期格式化一下,然后group by一下
    再用一张表记录已有的天数,遍历一下就查出来了那一天没有,so easy!
      

  9.   

    我在java里操作了。谢谢各位的帮忙