我有返回数据的 SQL:
SELECT
dbo.TOWARY.TWR_NUMER AS INDEKS,
dbo.TOWARY.TWR_NAZWA AS NAZWA,
dbo.SL_JM.SLJM_KOD AS JM,
SUM (dbo.WAZENIA.WZN_ILOSC * dbo.WZN_CNY.WZNCNY_NETTO) / SUM (dbo.WAZENIA.WZN_ILOSC) AS CENA,
DATEPART(yyyy, dbo.ZAKUPY.ZKP_DATA_ZAKUPU) AS ROK,
dbo.MAGAZYNY.MG_KOD AS MG_KOD,
dbo.MAGAZYNY.MG_NAZWA AS MG_NAZWA,
ROW_NUMBER () OVER (
PARTITION BY
dbo.TOWARY.TWR_NUMER
ORDER BY
dbo.TOWARY.TWR_NUMER,
DATEPART(yyyy, dbo.ZAKUPY.ZKP_DATA_ZAKUPU) DESC
) AS NUMER
我想在它们之间划分年份,例如:2021/2020 2022/2021 2023/2022 (...) 对于行(示例 20001): 0,61 / 0,64 0,74 / 0,64
DataSet - 如何从分组列中检索值? 但我不知道如何从列(年份)中获取值?
%第一个/最后一个 =(First(Fields!CENA.Value, "INDEKS")-Last(Fields!CENA.Value, "INDEKS"))/Last(Fields!CENA.Value, "INDEKS")
问题已在帖子中描述
您可以使用
Previous()
来完成此操作。您必须有一个以您的名字命名的范围 Column Group
,在您的情况下,它可能被称为 ROK
,但可以通过查看主设计窗格下方的列组进行检查。名称区分大小写,并且必须用双引号引起来。
所以你的表情可能是这样的......
=(SUM(Fields!CENA.Value)) / (PREVIOUS(SUM(Fields!CENA.Value), "ROK")
这不会处理除法为零错误等,但它应该可以帮助您开始。