How do I get the total number of unique CarNum's for each OrderID in its own column?
Desired Results:
Current Results:
Below is code that builds the results in the 'Current Results' image:
IF OBJECT_ID('tempdb..#testTable') IS NOT NULL DROP TABLE #testTable
CREATE TABLE #testTable
(
OrderID INT
, CarNum INT
, TimeOfDay VARCHAR(10)
, OrderNum INT
, TotalCarNum INT
)
INSERT INTO #testTable(OrderID, CarNum, TimeOfDay, OrderNum)
VALUES
(1111111,2069, 'AM', 1)
,(1111111,2199, 'AM', 2)
,(1111111,2147, 'AM', 3)
,(1111111,2147, 'PM', 1)
,(1111111,5025, 'PM', 2)
,(1111111,2069, 'PM', 3)
,(2222222,5009, 'AM', 1)
,(2222222,6111, 'AM', 1)
,(2222222,7111, 'AM', 1)
SELECT TT.OrderID
, TT.CarNum
, TT.TimeOfDay
, TT.OrderNum
, ROW_NUMBER() OVER (PARTITION BY TT.CarNum ORDER BY CarNum) AS TotalCarNum
, COUNT(TT.CarNum) OVER (PARTITION BY TT.CarNum ORDER BY CarNum) AS TotalCarNum2
FROM #testTable AS TT
ORDER BY TT.OrderID, TT.TimeOfDay, TT.OrderNum