I have a table tb_FirstName
with one field FirstName
. The table has 100 million non null records with lots of repetitions e.g. John occurs 2 million times. The distinct count of FirstName
is over 2 million.
How do I select 1000 distinct names as quickly as possible using standard sql?
I'm currently using the following but this is
- tSQL
Maybe not as efficient as it could be.
SELECT x.FirstName FROM ( SELECT FirstName, rnk = RANK() OVER (ORDER BY Firstname) FROM WHData.dbo.tb_DimUserAccount A GROUP BY FirstName ) x WHERE rnk <=1000