| id | uid | adId | appId | create_time | state |
+----+----------------------------------+-------+-------+---------------------+-------+
| 19 | 1 | 20 | 2 | 2011-10-20 09:20:25 | 0 |
| 20 | 1 | 20 | 2 | 2011-10-20 09:49:02 | 0 |
| 21 | 1 | 20 | 2 | 2011-10-20 09:49:11 | 0 |
| 14 | 4 | 11 | 2 | 2011-10-14 17:28:44 | 0 |
| 15 | 4 | 14 | 2 | 2011-10-14 17:30:47 | 0 |
| 16 | 4 | 13 | 2 | 2011-10-17 09:50:00 | 0 |
| 17 | 4 | 15 | 2 | 2011-10-17 09:50:46 | 0 |
| 18 | 4 | 18 | 2 | 2011-10-17 11:40:16 | 0 |
+----+----------------------------------+-------+-------+---------------------+-------+各位大佬们,我有这样一列数据,我需要根据uid分组查询统计次数,而且create_time是每半小时才算一次有效数字,| 14 | 4 | 11 | 2 | 2011-10-14 17:30:47 | 0 |
| 15 | 4 | 14 | 2 | 2011-10-14 17:30:47 | 0 |
这样算两条,因为adId不一样。最终结果如下:appId count as 次数
  2  |  5   不知道这样mysql如何完成,网上的一些方法都没有成功,希望大佬们做过的指导一下,也可以加我
QQ:408409463 http://topic.csdn.net/u/20111103/16/dcaef9ed-1d1c-4bee-b004-20416d4ecb8a.html

解决方案 »

  1.   

    select  appid,count(*)
    from tb
    group by appid,uid
      

  2.   

    select appid,count(*)ct from(
    select distinct appid,date(create_time)d,hour(create_time)h,MINUTE(create_time)/30 m from tb
    )t group by appid
      

  3.   

    直接回答 #1楼的问题吧。 这个5是怎么基于你的提供的数据得出来的?
     (不要高估你的汉语表达能力或者我的汉语理解能力)
       建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
       参考一下这个贴子的提问方式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)
       
       这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。