请问一个问题:
  假如我有新闻类别表,和新闻表,新闻类别表中存放的是新闻的类别(比如说:国际新闻,军事新闻等等),新闻表中存放的是所有的新闻,新闻表中的有个classid和新闻类别表中的id(主键关联)。
  我的问题是我如何通统计每个新闻类别表中的新闻条数.....
  请给出具体的sql语句,谢谢,在线等........

解决方案 »

  1.   

    要一次查询么?
    多次查询可以不。
    先查询所有的新闻类别:select distinct news_category_id from t_newsategory;
    下面循环查询每个类别的新闻个数(或者用存储过程来写):
    select count(*) from t_news where news_category_id = ...(上面查出来的)  
      

  2.   

    select b.className, count(1)
    from news a,news_class b
    where a.classid = b.id
    group by a.classid
      

  3.   

    select count(*),c.id,n.newsCategoryId from t_news n, t_newsCategory c where c.id = n.newsCategoryId group by c.id ;
      

  4.   

    select count(*) 国际新闻条数 from 新闻表 a where a.classid =b.id select * from 新闻类别表 b where b.类别='国际新闻'首先得到国际新闻类别的ID,然后与新闻表的classid比较,相等的就是国际新闻,再统计条数