现在想 group by region_id ,想取得每个组内的记录的条数 生成 num 列,请问该怎么写, 这是我的代码,不完整,希望大家帮忙啊SELECT r.region_name num FROM
ecs_users AS u
JOIN 
ecs_user_address AS ua  ON u.user_id = ua.user_id 
JOIN ecs_region  AS r   ON ua.province= r.region_id
WHERE ua.province >0
GROUP BY ua.province ....

解决方案 »

  1.   

     (不要高估你的汉语表达能力或者我的汉语理解能力)
       建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
       参考一下这个贴子的提问方式http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html
       
       1. 你的 create table xxx .. 语句
       2. 你的 insert into xxx ... 语句
       3. 结果是什么样,(并给以简单的算法描述)
       4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
       
       这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。   
      

  2.   


    不给出结构只能这样给你:select sum(if(...)) as num from 表
    group by 省份
      

  3.   

    user 表       user_id,addres_iduser_address 表 user_id ,address_id, provinceregion 表 region_id,region_name
    province 对应 region 表中的一条数据
    结构大概就是这样
      

  4.   

    select province.name,count(*) as num from province,city
    where province.id=city.father
    group by province.name这个给你有启发没;
    查找省有多少个市;
      

  5.   

    希望你不要说下面这名不是你期望的。select 省份,count(*)
    from table1
    group by 省份
      

  6.   

    其实现在就是想知道怎么才能获取 group by  每个分组内记录的数量 我也说不清了。郁闷了 
      

  7.   


    所以你把测试数据发出来,几条就够了,用结果说明.大家懂的;
    按照要求我只能这样写:SELECT r.region_name count(*) FROM
    ecs_region  AS r  JOIN ecs_user_address AS ua
     ON ua.province= r.region_id JOIN ecs_users AS u
     ON u.user_id = ua.user_id 
    WHERE ua.province >0
    GROUP BY ua.province