【问题标题】:SQL Sum and CountSQL 求和和计数
【发布时间】:2012-09-03 11:45:34
【问题描述】:

我有以下数据集。

[Date Recorded]             [VoteID]  [User]
[2012-07-20 00:00:00.000]   [2]       [A]
[2012-07-20 00:00:00.000]   [3]       [B]
[2012-07-20 00:00:00.000]   [4]       [C]
[2012-07-24 00:00:00.000]   [1]       [A]
[2012-07-24 00:00:00.000]   [1]       [B]

我怎样才能得到它来计算投票总和。 如果我们查看 2012-07-24 有 2 个用户记录了 [1] 的投票,那么我怎样才能让这两个用户加起来。 所以它看起来像

[Date Recorded]             [VoteID]  [Count]
[2012-07-20 00:00:00.000]   [2]       [1]
[2012-07-20 00:00:00.000]   [3]       [1]
[2012-07-20 00:00:00.000]   [4]       [1]
[2012-07-24 00:00:00.000]   [1]       [2]

我有一个用于 UserID 和 VoteID 的 Guid。

有人可以帮忙吗?

【问题讨论】:

    标签: sql database sum average


    【解决方案1】:

    [Date Recorded]VoteID 上的群组:

    SELECT [Date Recorded], VoteID, COUNT(*) [Count]
    FROM YourTable
    GROUP BY [Date Recorded], VoteID
    

    您投票的用户的 GUID 无关紧要,因为您只想知道在给定日期有多少人以某种方式投票;您不需要此聚合中的特定用户详细信息。

    【讨论】:

    • 所以现在我们只需要看看是我的桌子还是你的桌子...... :)
    【解决方案2】:

    使用GROUP BY 将日期和id 列分组,然后COUNT 将每个组中的结果向上:

    SELECT [Date Recorded], VoteID, COUNT(*)
    FROM myTable
    GROUP BY [Date Recorded], VoteID
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-09
      • 1970-01-01
      • 2017-01-30
      • 1970-01-01
      相关资源
      最近更新 更多