YS
Size: a a a
YS
T
YS
I📱
I📱
m
m
AC
count(distinct ProductID) over (partition by CategoryID)A
AC
case when row_number() over (partition by CategoryID, ProductID order by (select null)) = 1 then 1 else 0 endA
Л
A
A
SELECT
Col_A,
Col_B,
DistinctCount = DENSE_RANK() OVER (PARTITION BY Col_A ORDER BY Col_B ASC )
+ DENSE_RANK() OVER (PARTITION BY Col_A ORDER BY Col_B DESC)
- 1
- CASE COUNT(Col_B) OVER (PARTITION BY Col_A)
WHEN COUNT( * ) OVER (PARTITION BY Col_A)
THEN 0
ELSE 1
END
FROM
dbo.MyTable
;
Л
A
AP
S
A