样例数据
number recipient_name ship_address_1 account diqu upload_date
20 刘二 北京 PM_AC HK 2013-7-28 15:15
20 刘二 北京 PM_AC HK 2013-7-28 15:15
20 王五 北京 UK_AC SZ 2013-7-28 15:15
20 王五 北京 UK_AC SZ 2013-7-28 15:15
20 赵六 上海 PM_AC HK 2013-7-28 15:15
20 李小龙 上海 PM_AC HK 2013-7-28 15:15
20 朱四 上海 UK_AC SZ 2013-7-28 15:15
20 李小龙 上海 PM_AC SZ 2013-7-28 15:15
20 孙二 上海 UK_AC HK 2013-7-28 15:15
20 阿三 上海 UK_AC SZ 2013-7-28 15:15
我就想统计以下内容
account为PM_AC,diqu为HK总记录数多少
account为PM_AC,diqu为SZ总记录数多少
account为UK_AC,diqu为HK总记录数多少
account为UK_AC,diqu为SZ总记录数多少统计条件是:upload_date为2013-7-28所有的记录,recipient_name,ship_address_1,number相同的只有一次记录,然后GROUP BY `recipient_name` , `ship_address_1`, `number`
结果:
account为PM_AC,diqu为HK总记录数为1(赵六)
account为PM_AC,diqu为SZ总记录数为1(李小龙)
account为UK_AC,diqu为HK总记录数为1(孙二)
account为UK_AC,diqu为SZ总记录数为2(朱四,阿三)请问这个查询语句怎么写??最好能一个语句统计完,因为我是要统计一个月每一天的数量,然后有8个帐号。
在此先谢过了

解决方案 »

  1.   

    建议提供 create table , insert into 语句,这样别人可以直接测试
      

  2.   

    select account,diqu,upload_date,count(distinct recipient_name,ship_address_1,number)
    from tb
    group by account,diqu,upload_date
      

  3.   

    rucypli大大:
            你好! distinct应该是把重复的只显示一次吧??我的意思是出现过大于一次的不显示比如:
    recipient_name ship_address_1
    李二   北京
    王四   上海
    李二   北京
    王四   深圳
    刘大   广州显示的结果为:
    王四  上海
    王四  深圳
    刘大  广州重复出现过的李二要排除在外ACMAIN_CHM大大:
               你好!CREATE TABLE  `amazon_erp`.`aaa` (
    `number` INT NOT NULL ,
    `recipient_name` VARCHAR( 50 ) NOT NULL ,
    `ship_address_1` VARCHAR( 100 ) NOT NULL ,
    `account` VARCHAR( 30 ) NOT NULL ,
    `diqu` VARCHAR( 10 ) NOT NULL ,
    `upload_date` DATETIME NOT NULL
    ) ENGINE = MYISAM ;
    INSERT INTO  `amazon_erp`.`aaa` (
    `number` ,
    `recipient_name` ,
    `ship_address_1` ,
    `account` ,
    `diqu` ,
    `upload_date`
    )
    VALUES (
    '80',  '李二',  '北京',  'PM_AC',  'HK',  '2013-07-29 11:50:06'
    );
      

  4.   

    NSERT INTO  `amazon_erp`.`aaa` (
    `number` ,
    `recipient_name` ,
    `ship_address_1` ,
    `account` ,
    `diqu` ,
    `upload_date`
    )
    VALUES (
    '80',  '李二',  '北京',  'PM_AC',  'HK',  '2013-07-29 11:50:06'
    );

    其它 insert 语句呢?
      

  5.   

    INSERT INTO  `amazon_erp`.`aaa` (
    `number` ,
    `recipient_name` ,
    `ship_address_1` ,
    `account` ,
    `diqu` ,
    `upload_date`
    )
    VALUES (
    '80',  '刘二',  '北京',  'PM_AC',  'HK',  '2013-07-29 11:50:06'
    );INSERT INTO  `amazon_erp`.`aaa` (
    `number` ,
    `recipient_name` ,
    `ship_address_1` ,
    `account` ,
    `diqu` ,
    `upload_date`
    )
    VALUES (
    '80',  '刘二',  '北京',  'PM_AC',  'HK',  '2013-07-29 11:50:06'
    );
    INSERT INTO  `amazon_erp`.`aaa` (
    `number` ,
    `recipient_name` ,
    `ship_address_1` ,
    `account` ,
    `diqu` ,
    `upload_date`
    )
    VALUES (
    '80',  '赵六',  '上海',  'PM_AC',  'HK',  '2013-07-29 11:50:06'
    );
    INSERT INTO  `amazon_erp`.`aaa` (
    `number` ,
    `recipient_name` ,
    `ship_address_1` ,
    `account` ,
    `diqu` ,
    `upload_date`
    )
    VALUES (
    '80',  '李小龙',  '上海',  'PM_AC',  'HK',  '2013-07-29 11:50:06'
    );
    INSERT INTO  `amazon_erp`.`aaa` (
    `number` ,
    `recipient_name` ,
    `ship_address_1` ,
    `account` ,
    `diqu` ,
    `upload_date`
    )
    VALUES (
    '80',  '朱四',  '上海',  'PM_AC',  'HK',  '2013-07-29 11:50:06'
    );
    INSERT INTO  `amazon_erp`.`aaa` (
    `number` ,
    `recipient_name` ,
    `ship_address_1` ,
    `account` ,
    `diqu` ,
    `upload_date`
    )
    VALUES (
    '80',  '李小龙',  '上海',  'PM_AC',  'HK',  '2013-07-29 11:50:06'
    );
    INSERT INTO  `amazon_erp`.`aaa` (
    `number` ,
    `recipient_name` ,
    `ship_address_1` ,
    `account` ,
    `diqu` ,
    `upload_date`
    )
    VALUES (
    '80',  '孙二',  '上海',  'UK_AC',  'HK',  '2013-07-29 11:50:06'
    );
    INSERT INTO  `amazon_erp`.`aaa` (
    `number` ,
    `recipient_name` ,
    `ship_address_1` ,
    `account` ,
    `diqu` ,
    `upload_date`
    )
    VALUES (
    '80',  '阿三',  '上海',  'UK_AC',  'HK',  '2013-07-29 11:50:06'
    );