SQL Server - вытащить X случайных записей на каждое состояние
У меня есть таблица с записями для каждого почтового индекса в Соединенных Штатах. Для отображения на карте мне нужно выбрать X случайных записей для каждого состояния. Как я могу это сделать?
Ответ 1
Использование:
WITH sample AS (
SELECT t.*,
ROW_NUMBER() OVER (PARTITION BY t.state
ORDER BY NEWID()) AS rank
FROM ZIPCODES t)
SELECT s.*
FROM sample s
WHERE s.rank <= 5