抱歉!我真是昏头了,前面的问题无效,改问下面这个问题:在一个表VOD_HIS中,可以实现以下操作
SELECT film_name, COUNT(FILM_NAME) AS COUNT FROM VOD_HIS  where ORDER_TIME BETWEEN 0:0:0 and 23:59:59 GROUP BY film_name ORDER BY COUNT DESC
该操作对表中film_name字段内容相同的记录进行统计,并对统计结果排行现在我要实现另一个功能,在上面的统计结果中,我还要通过film_name查询另一个表FILM_INFO,使得上面的统计结果必须满足表FILM_INFO的FILM_TYPE_ID字段必须等于一个特定的值1,我的SQL语句是这样写的
SELECT film_name, COUNT(FILM_NAME) AS COUNT FROM VOD_HIS,FILM_INFO  WHERE VOD_HIS.FILM_NAME=FILM_INFO.FILM_NAME AND FILM_TYPE_ID=1 GROUP BY film_name ORDER BY COUNT DESC可是查询语句分析却是错误的,我是新手,请高手指点一二,谢了!

解决方案 »

  1.   

    SELECT *
    FROM (SELECT VOD_HIS.film_name, COUNT(VOD_HIS.film_name) AS COUNT
            FROM VOD_HIS
            GROUP BY VOD_HIS.film_name) a, VOD_HIS b
    WHERE a.FILM_NAME = b.FILM_NAME AND a.FILM_NAME like '%1%'
    ORDER BY COUNT DESC
      

  2.   

    有网友给我提供了下面的两种SQL语句,可是都不能查询完全,总是会漏掉记录,请高手指点!!!
    SELECT film_name, COUNT(FILM_NAME) AS COUNT FROM VOD_HIS  
    where ORDER_TIME BETWEEN '0:0:0' and '23:59:59' 
    and exists (
    select 1 from FILM_INFO  
    where FILM_NAME=VOD_HIS.FILM_NAME
    and FILM_TYPE_ID=1
    )
    GROUP BY film_nameSELECT VOD_HIS.film_name, COUNT(VOD_HIS.film_name) AS COUNT FROM VOD_HIS,FILM_INFO  WHERE VOD_HIS.FILM_NAME=FILM_INFO.FILM_NAME AND FILM_TYPE_ID=1 GROUP BY VOD_HIS.film_namee ORDER BY COUNT DESC
      

  3.   

    --这个语句会是正确的?? 不信SELECT film_name, COUNT(FILM_NAME) AS COUNT 
    FROM VOD_HIS  
    where ORDER_TIME BETWEEN 0:0:0 and 23:59:59 
    GROUP BY film_name 
    ORDER BY COUNT DESC
      

  4.   

    zjcxc(邹建) :你好!这个语句有什么问题呢?可是我确实实现了的啊
      

  5.   

    能用ORDER BY COUNT DESC吗,我没有试过,不知道行不行,好象要写成COUNT(FILM_NAME)才行吧.
      

  6.   

    各位大侠,请帮我看看这样的语句为什么会漏掉记录好吗?
    SELECT film_name, COUNT(FILM_NAME) AS COUNT
    FROM VOD_HIS
    WHERE EXISTS
              (SELECT 1
             FROM FILM_INFO
             WHERE FILM_NAME = VOD_HIS.FILM_NAME AND FILM_TYPE_ID = 1)
    GROUP BY film_name
    ORDER BY COUNT DESCSELECT VOD_HIS.film_name, COUNT(VOD_HIS.film_name) AS COUNT FROM VOD_HIS,FILM_INFO  WHERE VOD_HIS.FILM_NAME=FILM_INFO.FILM_NAME AND FILM_TYPE_ID=1 GROUP BY VOD_HIS.film_namee ORDER BY COUNT DESC