Sql server SSRS结果与具有相同查询的SSMS结果不同
我将SQL查询的结果与SSRS报告的结果进行比较,并在其数据集上进行相同的查询,但我注意到,与SQL相比,SSRS的结果要小一些 我对它进行了多次测试,确保在报告中选择了相同的参数,并在SQL查询中输入了相同的值,但仍然没有得到相同的结果。有人能帮我吗?我真的看不出有什么问题。我也检查了我的SSRS报告中的所有过滤器,但我在那里没有任何对象的过滤器Sql server SSRS结果与具有相同查询的SSMS结果不同,sql-server,reporting-services,ssrs-2012,Sql Server,Reporting Services,Ssrs 2012,我将SQL查询的结果与SSRS报告的结果进行比较,并在其数据集上进行相同的查询,但我注意到,与SQL相比,SSRS的结果要小一些 我对它进行了多次测试,确保在报告中选择了相同的参数,并在SQL查询中输入了相同的值,但仍然没有得到相同的结果。有人能帮我吗?我真的看不出有什么问题。我也检查了我的SSRS报告中的所有过滤器,但我在那里没有任何对象的过滤器 SELECT ZR.CURRENT_PROD_SKU AS PRODUCT_SKU ,LGEO.LEVEL6 AS CUSTOMER_COUNT
SELECT ZR.CURRENT_PROD_SKU AS PRODUCT_SKU
,LGEO.LEVEL6 AS CUSTOMER_COUNTRY
,LGEO.LEVEL1 AS CUSTOMER_REGION
,ZR.BILLTO_IBR_CSR_ENTITY_NAME AS CUSTOMER_NAME
,ZR.CURRENTPRODATT_DIV_NAME AS PROD_DIV
,LDATE.PER_NAME_MONTH
,SUM(ZR.RPTDPOSRECORDUNITSSOLD) AS QUANTITY
,SUM(ZR.PRICEC_EUR) AS PRICEC_EUR
FROM View_ZR_Birst_Raw ZR
LEFT JOIN LOOKUP_DATE LDATE ON ZR.POS_INVOICE_DATE = LDATE.DAY_DT
LEFT JOIN LOOKUP_GEO_MASTER LGEO ON LGEO.COUNTRY = ZR.BILLTO_IBR_CSR_COUNTRY
WHERE ZR.POS_INVOICE_DATE BETWEEN @StartDate AND @EndDate
AND LGEO.LEVEL6 IN (SELECT VALUE FROM DBO.[FnSplit](@Country,','))
AND ZR.CURRENTPRODATT_DIV_NAME IN (SELECT VALUE FROM DBO.[FnSplit](@ProductDivision,','))
AND ZR.CURRENT_PROD_SKU IN (SELECT VALUE FROM DBO.[FnSplit](@SKU,','))
GROUP BY ZR.CURRENT_PROD_SKU
,LDATE.PER_NAME_MONTH
,LGEO.LEVEL6
,LGEO.LEVEL1
,ZR.BILLTO_IBR_CSR_ENTITY_NAME
,ZR.CURRENTPRODATT_DIV_NAME
ORDER BY CUSTOMER_REGION,CUSTOMER_COUNTRY,BILLTO_IBR_CSR_ENTITY_NAME,PROD_DIV,PRODUCT_SKU
OPTION (MAXDOP 4)
我在WHERE子句中使用了[FnSplit]函数。此函数主要用于从multiselect参数中拆分逗号分隔的值,因为我的脚本最初在SP中,所以我使用了它。SSRS可以使用缓存数据集-关闭此选项 另外-如果在设计器中使用它,则删除reportname.data以删除本地更改版本