首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL计算用户在执行操作前有多少任务

MySQL计算用户在执行操作前有多少任务
EN

Stack Overflow用户
提问于 2017-03-17 21:42:08
回答 1查看 41关注 0票数 0

好吧,很难得到一个标题,我希望我能把这个说清楚。

我有下表:

代码语言:javascript
复制
push_id int(11)
push_usr_id int(11)
push_account varchar(30)
pust_title varchar(128)
pust_contents varchar(254)
push_when datetime

这些是将通过移动推送发送的任务的提醒。我有一个像这样每分钟运行一次的cron:

选择*从push_when push_when <= NOW()

这给了我总提醒,我必须推动。

问题是,一个用户可以同时拥有多个提醒,甚至可以有几十个提醒。我不想向用户设备(或设备)推送数十条消息,如果用户同时有多个提醒,我只想发送一条推送消息,上面写着“您有12项任务要做”之类的内容,而不是标准的任务提醒。

我知道显而易见的是对每个提醒进行另一个查询,以获得该用户id的提醒数量,但是,正如我所说的,这个东西每分钟运行一次。有没有一种没有几个查询就能做到这一点的方法?表结构还没有生产,我还可以做修改。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-17 21:48:25

我相信这里的答案是用小组的方式。在这种情况下,您需要按push_usr_id进行分组。如下所示:

代码语言:javascript
复制
select push_usr_id, count(*) as Push_Num
  from yourtable
 where push_when <= now()
 group by push_usr_id;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42867523

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档