SQL Server - извлекать X случайных записей в каждом штате - PullRequest
10 голосов
/ 22 октября 2010

У меня есть таблица с записями для каждого почтового индекса в Соединенных Штатах. Для отображения на карте мне нужно выбрать X случайных записей в каждом штате. Как бы я поступил так?

Ответы [ 2 ]

12 голосов
/ 22 октября 2010

Использование:

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
0 голосов
/ 22 октября 2010
SELECT * FROM ZipCodes ORDER BY NEWID()
...