2
私のSQLクエリの結果をSSRSレポートと同じクエリで比較していますが、結果はSQLと比較してSSRSの方が小さいことに気付きました。SSRSの結果が同じクエリのSSMS結果と異なる
私はそれを何度もテストし、同じパラメータをレポートで選択して、同じ値がSQLクエリに入力されていることを確認しましたが、私は同じ結果を得ていません。誰もこれで私を助けることができますか?私は本当に問題を見ることができません。 SSRSレポートのすべてのフィルタもチェックしましたが、そこにはどのフィルタもありませんでした。
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]関数を使用しました。この関数は、基本的には、私のスクリプトがもともとSPに入っていたので、カンマ区切りの値を複数選択パラメータで分割するためのものです。