這是上一篇文章的后續。我試圖獲得每個人在一個月內完成所有交易所需的平均天數。每個人每個月有 200 多筆交易,我們只會從開放日期到發票日期,所以我們不必擔心下個月發生的交易。
我能夠使用 CASE 陳述句將負數的任何內容更改為 0。結果隨著每筆交易而出現,所以現在我只是嘗試獲取每個人的數字,對它們求平均值,然后按用戶名顯示它們。
這是我到目前為止所得到的
SELECT [Transaction], [UserID],
CASE WHEN DATEDIFF (day, [ShippingDt], [InvoiceDate]) < 0
THEN 0
ELSE DATEDIFF (day, [ShippingDt], [InvoiceDate])
END AS DTC
FROM Transaction.table
WHERE [ShippingDt] >= '20211101' AND [ShippingDt] < '20211201'
AND [InvoiceDate] IS NOT NULL
uj5u.com熱心網友回復:
好吧,你說你想要一個平均值,所以AVG似乎是合適的,并且分組為UserID:
SELECT [UserID],
AVG(CASE WHEN DATEDIFF(day, [ShippingDt], [InvoiceDate]) < 0
THEN 0
ELSE DATEDIFF(day, [ShippingDt], [InvoiceDate])
END) AS DTC
FROM Transaction.table
WHERE [ShippingDt] >= '20211101' AND [ShippingDt] < '20211201'
AND [InvoiceDate] IS NOT NULL
GROUP BY [UserID];
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/397703.html
標籤:sql sql-server 查询语句
下一篇:拆分全名列
