![]() |
1
1
这基本上返回当前条目前一天的最高价格。 |
![]() |
2
2
注意:
这是我将如何做到的(至少在SQL Server 2012上): 为了每个月只获得一条记录和一个项目(在最近的日期成本最高),我使用一个编号为采购日期和成本(每个项目和月份),按降序排序,先按日期,然后按成本。在下一步中,我只过滤编号为1(每个项目和月份的最大日期和月份的最大成本)的记录,并使用滞后函数访问以前的成本:
|
![]() |
3
0
对于SQL Server 2017,下面的查询适用于示例数据
|
![]() |
4
0
对于您的结果,您需要使用
我需要注意的是,先按年,然后按月对记录进行排序是很重要的。然后,如果你需要包括这一天,包括它。这样您就可以确保记录的排序正确。 因此,查询看起来像这样:
|
![]() |
5
0
|
![]() |
Duvan · 将逗号(,)替换为点(.)[副本] 2 年前 |
![]() |
Mateen Bagheri · 选择表的计数并选择其自身 2 年前 |
![]() |
SoT · SQL Server中求和函数的工作方式 2 年前 |
![]() |
NKAT · 将列值聚合到列表中会产生错误 2 年前 |
![]() |
deanpillow · 返回两列中有一个匹配值的记录 2 年前 |
![]() |
snowflakes74 · 在Dapper中异步查询多个结果 2 年前 |