有分组查询的同时用select count(*) from ... group by ..是查不出总记录条数的。在ORACLE中有over()函数可以实现,不知道各位大侠有没有遇到过这样的问题

解决方案 »

  1.   

    MYSQL 中用GROUP BY 得出的COUNT(*)是那个字段每个不重复的总数 。
      

  2.   

    是的,其他数据库也是一样的,不过像ORACLE中可以用over()函数来实现,MYSQL不行
      

  3.   

    set names gbk;
    create temporary table tmp_test(counter int(11));
    insert into tmp_test select count(*) from ecs_attribute where 1=1 group by attr_id;
    select count(*) from tmp_test;ecs_attribute表名
      

  4.   

    谢谢,yueliangdao0608((深圳PHPER))的回答,我是用HIBERNATE做的,这样好像实现不了,最好能用一条SQL语句来实现
      

  5.   

    select count(1) from (select count(1) from order_detail GROUP BY commodity_order_no) T