group by to_char(register_time,'yyyy-mm-dd')

解决方案 »

  1.   

    如题意所示
    group by get_clinicnum_by_day_office( '10300', to_char(register_time,'yyyymmdd')),get_clinicnum_by_day_office( '10200', to_char(register_time,'yyyymmdd')),(get_clinicnum_by_day_office( '10300', to_char(register_time,'yyyymmdd')) + get_clinicnum_by_day_office( '10200',to_char(register_time,'yyyymmdd'))),to_char(register_time,'yyyy-mm-dd')
      

  2.   

    select 
           get_clinicnum_by_day_office( '10300', to_char(register_time,'yyyymmdd')) AS 科1,
           get_clinicnum_by_day_office( '10200', to_char(register_time,'yyyymmdd'))AS 科2,
           (get_clinicnum_by_day_office( '10300', to_char(register_time,'yyyymmdd')) + get_clinicnum_by_day_office( '10200',to_char(register_time,'yyyymmdd'))) as sum2 ,
           to_char(register_time,'yyyy-mm-dd') as todayfrom register_info
    group by to_char(register_time,'yyyy-mm-dd')
      

  3.   

    用distinct !select distinct get_clinicnum_by_day_office( '10300', to_char(register_time,'yyyymmdd')) AS 科1,
           get_clinicnum_by_day_office( '10200', to_char(register_time,'yyyymmdd'))AS 科2,
           (get_clinicnum_by_day_office( '10300', to_char(register_time,'yyyymmdd')) + get_clinicnum_by_day_office( '10200',to_char(register_time,'yyyymmdd'))) as sum2 ,
           to_char(register_time,'yyyy-mm-dd') as today
    from register_info
      

  4.   

    这样虽然是搞定了。
    但是,我想问的是, 在group by后面是不是只能是 数据表的原来的字段。
      

  5.   

    好像用别名不行,但可以用函数,比如to_char(register_time,'yyyy-mm-dd') ,get_clinicnum_by_day_office( '10200', to_char(register_time,'yyyymmdd')) 等。
      

  6.   

    select ...
      from ( select ... from ... ) a   --from中的子查询就是你原先的查询
      group by ...
      

  7.   

    我的Oracle(8.1.7)可以使用group by function(),...  是不是你的Oracle版本太低?