代码之家  ›  专栏  ›  技术社区  ›  Chris

SQL Server-每个状态拉X个随机记录

  •  10
  • Chris  · 技术社区  · 14 年前

    我有一张表,上面有美国每个邮政编码的记录。为了在地图上显示,我需要为每个状态选择X个随机记录。我该怎么做呢?

    2 回复  |  直到 13 年前
        1
  •  12
  •   OMG Ponies    14 年前

    使用:

    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
    
        2
  •  0
  •   rupert0    14 年前
    SELECT * FROM ZipCodes ORDER BY NEWID()