select count(packageid) from sbm_package
where createrid=21120 and createtime>to_date('2006-09-30','yyyy-mm-dd') and
subattributetypeid =70 and priattributetypeid=12
报ora-00937错误!!!!
是group by问题????????
这段sql语句在那里加group by?????????????????????

解决方案 »

  1.   

    打错了:应该
    select  count(packageid)  from  sbm_package  
    where  createrid=21120  and  createtime>=to_date('2006-09-30','yyyy-mm-dd')  and
    createtime<=to_date('2006-10-30','yyyy-mm-dd')  and
    subattributetypeid  =70  and  priattributetypeid=12  
      

  2.   

    感觉就目前这个SQL来说,不应该发生这种错误。
    你是否可以把ORACLE环境信息、表结构等全部提供一下,以供分析。
      

  3.   

    count(packageid)你把这个改成Count(*)试试。SQL语句应该没什么问题吧。
      

  4.   

    lz请给出表结构吧
    看不出你的sql文有问题
      

  5.   

    count(packageid)是不对的,应该是count(1)吧
      

  6.   

    试试 count(packageid) as pid
      

  7.   

    看了楼主的语句 建议你createtime用between ('2006-09-30','yyyy-mm-dd') and  to_date('2006-10-30','yyyy-mm-dd') 至于 group by 加在语句的最后就行了例如:select count(ID) from test where testname='ss' and time between ('2006-09-30','yyyy-mm-dd') and  to_date('2006-10-30','yyyy-mm-dd')  group by typename;
      

  8.   

    他这个语句中没有GROUP BY.
    语句中COUNT(packageid)的时候,系统调用了GROUP BY子句。建议楼主给出表结构,你提供的信息太少,无法判断是在哪里出错。
      

  9.   

    不知道问题是不是出在to_date()函数上,试试看!