Или используйте следующий запрос, который возвращает лучший результат случайной выборки:
SELECT * FROM a_table WHERE 0.01 >= CAST(CHECKSUM(NEWID(), a_column) & 0x7fffffff AS float) / CAST (0x7fffffff AS int)
0,01 означает ~ 1 процент от общего числа строк.
Цитата из электронной документации по SQL 2008:
Если вы действительно хотите случайную выборку
отдельные строки, измените ваш запрос на
отфильтровывать строки случайным образом, а не
используя TABLESAMPLE.