【问题标题】:SQL Syntax to group this data in SQL Server 2012在 SQL Server 2012 中对这些数据进行分组的 SQL 语法
【发布时间】:2014-10-14 15:31:14
【问题描述】:

我有一个表格(称为 StayDate),如下所示:

ResaID      Date        RoomCategory    RateAmount
 1       2014-09-01         A              125
 1       2014-09-02         A              125
 1       2014-09-03         B              140
 2       2014-09-04         A              125
 2       2014-09-05         A              125
 2       2014-09-06         A              125
 2       2014-09-07         C              160
 2       2014-09-08         C              160

我需要的 SQL 语法的输出如下所示:

ResaID      Count        RoomCategory    RateAmount
 1            2             A              125
 1            1             B              140
 2            3             A              125
 2            2             C              160

任何人都可以提供汇总上述数据所需的 SQL 语法吗?

【问题讨论】:

  • SELECT ResaID, COUNT(*) [Count], RoomCategory, RateAmount FROM YourTable GROUP BY ResaID, RoomCategory, RateAmount

标签: sql sql-server group-by summarization


【解决方案1】:

一种无需 GROUP BY 的方法:

SELECT DISTINCT ResaID, COUNT(*) OVER (PARTITION BY ResaID, RoomCategory, RateAmount) Count, RoomCategory, RateAmount
FROM StayDate

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-04
    • 1970-01-01
    • 1970-01-01
    • 2020-04-10
    • 1970-01-01
    相关资源
    最近更新 更多