日期:2014-05-18  浏览次数:20521 次

高手帮我解决一个查询问题
SELECT  
          (  
          SELECT  
                    COUNT   (   *   )  
          FROM  
                    T004_ACCEPT   WHERE   条件)   AS   COUNTNUM   ,  
          ACCEPT_SLIP_NO   ,  
FROM  
          T004_ACCEPT   WHERE   条件
我现在想在一条查询语句中得到满足条件的结果又想得到满足条件的纪录数,上面的语句可以实现,但必须写两个相同的WHERE。而且每条纪录都得COUNT(*)有没好的办法?

------解决方案--------------------
如果只要一个ACCEPT_SLIP_NO 和COUNTNUM 可用group by
select ACCEPT_SLIP_NO,COUNT ( * ) AS COUNTNUM from
T004_ACCEPT WHERE 条件 group by ACCEPT_SLIP_NO

------解决方案--------------------
--用group by

SELECT COUNT ( * ) AS COUNTNUM , ACCEPT_SLIP_NO
FROM T004_ACCEPT
WHERE 条件
group by ACCEPT_SLIP_NO
------解决方案--------------------
不是一个,也是一样的,都是用group 将数据分组