实现一个类别统计 
如 
A (10)  
B (5)  
C (8)  
D (6)  
E (1)  数据表如下: 
表a(类别) 
id  类别名 
1    A 
2    B 
.    . 
.    . 表b(产品) 
id  aid  产品名 
1    2    产品a 
2    1    产品b 本打算用以下SQL做统计,但用起来比较麻烦因为是用Dataset做DataSource再绑定的. 
SELECT count(表b.aid) 
FROM 表a, 表b 
WHERE 表a.id=表b.aid 
GROUP BY 表b.aid 
HAVING 表a.id=@id; 请问师兄们有什么好方法? 

解决方案 »

  1.   

    但用起来比较麻烦因为是用Dataset做DataSource再绑定的. 
    =========?
    什么意思? lz是问sql还是问程序还是????
      

  2.   


    程序和SQL都想问一下.我觉得我的SQL用得不那么好,程序不用Dataset做DataSource绑定请问有什么其它方法可以用?
      

  3.   

    SQL还是要弄好的.这个问题主要是你写的SQL不对.我猜你是发愁数据源只有一列,其实统计列应该是两列:
    SELECT b.aid, count(表b.aid) 
    FROM 表a, 表b 
    WHERE 表a.id=表b.aid 
    GROUP BY 表b.aid 
    HAVING 表a.id=@id; 然后绑定数据源是很轻松的事情.
      

  4.   

    sql:select  A.类别名,COUNT(B.ID) FROM 
    A INNER JOIN B
    ON A.id = B.AID
    GROUP BY A.类别名
    程序:
    可用Repeater,DataList,DataGrid,GridView等来显示。建议用Repeater绑定DataView