sql >> Databasteknik >  >> RDS >> Sqlserver

Partitionsfunktion COUNT() OVER möjlig med DISTINCT

Det finns en mycket enkel lösning med dense_rank()

dense_rank() over (partition by [Mth] order by [UserAccountKey]) 
+ dense_rank() over (partition by [Mth] order by [UserAccountKey] desc) 
- 1

Detta ger dig exakt vad du efterfrågade:Antalet distinkta användarkontonycklar inom varje månad.



  1. Hur man beräknar median i MySQL

  2. Hur stänger jag av Oracle-lösenordets utgång?

  3. Skapa ett databaspostkonto i SQL Server (T-SQL)

  4. Konvertera Unixtime till Datetime SQL (Oracle)