求一sql语句,一个表里存的是用户的注册信息包括注册的ip,查询的结果为如果ip为空,城市为未知以及人数;如果ip为国外的ip,城市为其他以及人数;否则就是国内省份的注册人数总记;
结果类似与:
-----------------------
riqi          city         total
2012-02-01    北京          20
2012-02-01    广西          70
2012-02-01    江西          60
2012-02-01    福建          50
2012-02-01    未知          60
2012-02-01    其他          50
2012-02-02    北京          24
2012-02-02    湖北          210
2012-02-02    福建          20
2012-02-02    未知           210
2012-02-02    其他          20

解决方案 »

  1.   


    有id自增的注册一个增加一个,有ip存的是ip归属省
      

  2.   

    Field             Type            Comment
    id                int(11)             id
    name             char(100)        用户名称
    phone            char(15)           手机号
    ip_province     varchar(30)       ip归属省(有空的,有国外的)
      

  3.   


    id        name         phone          ip_province    time
    1          赵           21322           北京          2012-01-02
    2          赵           21322           海南          2012-01-09
    3          赵           21322           日本          2012-01-07
    4          赵           21322           北京          2012-01-02
    5          赵           21322           null          2012-01-06
    6          赵           21322           香港          2012-01-02
    7          赵           21322           香港          2012-01-09
      

  4.   

    select riqi,isnull(city,'其它') as city,
    SUM(case when ip归属省 
    and ip归属省<>'有国外的' then 1 else 0 end) as total
    from tbl
    group by riqi,city
    union all
    select riqi,city, as city,count(*) as total from tbl
    where ip归属省=国外的
      

  5.   


    这个和结果不符吧!如果ip为空,城市为未知  如果ip为国外的ip,城市为其他,在帮忙看一下,是mysql数据库
      

  6.   


    Mysql的就去对应的版块吧,思路差不多都是这样,只是没把你的条件处理完