有两表
table Aenterpriseid   enterprisename  money   
23              1公司     500
25               2公司     100
29               3公司     700
31              4公司     100table B
enterpriseid   enterprisename     employee
23              1公司         aa
23              1公司         h
23              1公司         aa
23              1公司         n
25               2公司        bb
29               3公司        d
31              4公司         v
现在得到下面的结果
enterpriseid   enterprisename      sum
23              1公司          4
25               2公司         1
29               3公司         1
31              4公司          1
sum代表 A表中的记录在B表中的记录数
请各们高手指教!!

解决方案 »

  1.   

    select enterpriseid,enterprisename,count(enterpriseid) sum 
    from B 
    group by enterpriseid,enterprisename
    order by enterpriseid
      

  2.   

    SQL> select a.enterpriseid, a.enterprisename, count(b.enterpriseid) from tablea
    a left join tableb b on a.enterpriseid = b.enterpriseid  group by a.enterpriseid
    , a.enterprisename;
    你要记得给分啊。
    我可以建表给你写的。
      

  3.   

    不好意思,刚才忘记了,表结构不对,结果还少一列
    有两表
    table Aenterpriseid   enterprisename  money   
    23              1公司     500
    25               2公司     100
    29               3公司     700
    31              4公司     100table B
    enterpriseid   enterprisename     employee
    23              1公司         aa
    23              1公司         h
    23              1公司         aa
    23              1公司         n
    25               2公司        bb
    29               3公司        d
    31              4公司         v
    现在得到下面的结果
    enterpriseid   enterprisename   money   sum
    23              1公司        500    4
    25               2公司       100    1
    29               3公司       700    1
    31              4公司         100   1
    sum代表 A表中的记录在B表中的记录数
    请各们高手指教!!
      

  4.   

    把我的那个加一个a.money就行了.在group by 也要加a.money
      

  5.   

    select a.enterpriseid, a.enterprisename, a.money, b.ssum 
    from A a, (select enterpriseid, count(*) ssum  
               from B 
               group by enterpriseid) b
    where a.enterpriseid = b.enerpriseid
    order by a.enterpriseid