繁体   English   中英

如何找到每个问题的订阅者数量?

How to find number of subscribers per question?

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我试图找到每个问题的订阅者数量。 这里的挑战是用户订阅了不止一次,但我只需要计算该用户第一次订阅的时间。 如果有人可以指导我,我仍在学习。 我附上了我使用的表格和代码的链接

查询结果

select * , COUNT(GroupQuestionSubscriberId) NumberOfSubscriber
from [dbo].[ADF_GroupQuestionSubscribers]
where GroupQuestionId = 4654
GROUP BY [GroupQuestionSubscriberId], [GroupQuestionId], [UserID], [Status], [CreatedDt]
1 个回复

CreatedDt列很可能包含每一行数据的唯一值。 group by子句中包含该列将产生许多等于1计数。 为了使您当前的查询产生2的计数,您需要两行具有完全相同的GroupQuestionSubscriberIdGroupQuestionIdUserIDStatusCreatedDt 如果所有这些都没有多少意义,那么我建议您通过阅读文档来group by知识来提高您的group by

如果打算在可用数据旁边显示该计数,则使用cross apply是一种可能的解决方案。

样本数据

create table ADF_GroupQuestionSubscribers
(
  GroupQuestionSubscriberId int,
  GroupQuestionId int,
  UserId int,
  Status nvarchar(10),
  CreatedDt datetime
);

insert into ADF_GroupQuestionSubscribers (GroupQuestionSubscriberId, GroupQuestionId, UserId, Status, CreatedDt) values
(8031, 4654, 32338, 'Subscribed', '2021-01-19 15:41:25.970'),
(8035, 4654, 32299, 'Subscribed', '2021-01-19 15:55:14.123'),
(8038, 4654, 32338, 'Subscribed', '2021-01-19 16:00:27.343'),
(8094, 4654, 32466, 'Subscribed', '2021-01-20 06:42:50.323');

解决方案

select gqs.*,
       c.NumberOfSubscribers
from ADF_GroupQuestionSubscribers gqs
cross apply ( select count(distinct gqsc.UserId) as NumberOfSubscribers
              from ADF_GroupQuestionSubscribers gqsc
              where gqsc.GroupQuestionId = gqs.GroupQuestionId ) c
where gqs.GroupQuestionId = 4654;

结果

GroupQuestionSubscriberId  GroupQuestionId  UserId  Status      CreatedDt                NumberOfSubscribers
-------------------------  ---------------  ------  ----------  -----------------------  -------------------
8031                       4654             32338   Subscribed  2021-01-19 15:41:25.970  3
8035                       4654             32299   Subscribed  2021-01-19 15:55:14.123  3
8038                       4654             32338   Subscribed  2021-01-19 16:00:27.343  3
8094                       4654             32466   Subscribed  2021-01-20 06:42:50.323  3

小提琴以查看实际情况。

编辑:解决方案更新了新的预期结果信息。

2 如何计算订户数量

我正在使用此模型来允许用户订阅或取消订阅特定游戏。 但是现在我不确定如何计算订阅特定游戏的用户数量。 views.py: ...

2019-03-28 20:43:09 1 29   django
3 计算每月总通讯订阅者的数量

我现在正在敲打几个小时,试图找出如何使用Redshift 计算每月总通讯订阅者的数量 。 计算的基础是一个事件表,用于跟踪每个用户操作,特别是他订阅或取消订阅时事通讯。 简化它看起来像这样: 对于每个月,我都想总结订阅新闻稿的用户数量加上已经订阅但未取消订阅的用户数量。 在上面 ...

4 确定JMS中每个主题的订户数

我正在为Java Message Service构建一个小型统计应用程序。 我有一个容器,每个主题有几个主题和大量订阅者(消费者)。 JMS提供商:SonicMQ 我把程序送到我所在的州: 创建会话 为主题创建MessageConsumer 听取消息 ...

2009-07-07 09:22:06 1 498   java/ jms
8 如何确定RSS Feed的订阅者数量

我有一个客户端正在使用Wordpress网站的基本源(www.website.com/feed)。 她问有多少人订阅了她的饲料。 是否有捷径可寻? 我认为你可以使用谷歌阅读器,但我想这些只是谷歌阅读器的统计数据。 我知道Feedburner可以做到这一点,但是将饲料连接到饲料燃烧器会影响 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM