我有以下查询:
SELECT distinct sender AS [Supplier], t1.date, COUNT(Status) AS [Transactions]
FROM tx
CROSS APPLY ( VALUES (CONCAT(left(DATENAME(mm, Date_Reported),3),' ',
DATENAME(yyyy, Date_Reported)),
DATEPART(mm, Date_Reported)
)
) t1 (Date, Morder)
WHERE Date >= DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE()), 0)
AND Date < DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE()) + 1, 0)
GROUP BY sender, t1.date
ORDER BY [Transactions] DESC;
以下查询为我提供了100多个供应商的列表,这些供应商按当月完成交易最多的那些供应商的顺序排列。我想要的是前10名和剩下的组合作为&#34; OTHER&#34;。
然而,为了增加一点复杂性,我在供应商下面有一行被称为&#34;未分配&#34;。这总是排在前5位,但我希望它属于&#34; OTHER&#34;因为它不代表我的前15名。
我有什么想法可以解决上面我遇到的两个问题?
非常感谢提前。