1
在另一個字段中使用聚合時,是否有安全的方式可以不需要按字段進行分組?以下是分組我只是得到984行,但由A.InvoiceDateId場分組後我得到了11K的行之前,我的例子擺脫分組字段
SELECT
C.CustomerName
,D.INDUSTRY_CODE
,CASE WHEN D.INDUSTRY_CODE IN ('003','004','005','006','007','008','009','010','017','029')
THEN 'PM'
WHEN UPPER(CustomerName) = 'ULINE INC'
THEN 'ULINE'
ELSE 'DR'
END AS BU
,ISNULL((SELECT SUM(GrossAmount)
where CONVERT(date,convert(char(8),InvoiceDateID)) between DATEADD(yy, DATEDIFF(yy, 0, GETDATE()) - 1, 0) and DATEADD(year, -1, GETDATE())),0) [PREVIOUS YEAR GROSS]
FROM factMargins A
LEFT OUTER JOIN dimDate B ON A.InvoiceDateID = B.DateId
LEFT OUTER JOIN dimCustomer C ON A.CustomerID = C.CustomerId
LEFT OUTER JOIN CRCDATA.DBO.CU10 D ON D.CUST_NUMB = C.CustomerNumber
GROUP BY
C.CustomerName,D.INDUSTRY_CODE
,A.InvoiceDateID
order by CustomerName
。由於每個客戶有多個發票,所以這些行會被炸燬。 Min和Max不會工作,因爲那樣會導致數據不正確。是否最好讓我的應用程序(水晶)擺脫多餘的線?通常,我希望我的基礎數據儘可能接近報表的佈局,如果可能的話。
這有助於感謝 –