Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Selecione n linhas aleatórias da tabela do SQL Server

select top 10 percent * from [yourtable] order by newid()

Em resposta ao comentário "puro lixo" sobre tabelas grandes:você pode fazer assim para melhorar o desempenho.
select  * from [yourtable] where [yourPk] in 
(select top 10 percent [yourPk] from [yourtable] order by newid())

O custo disso será a verificação de chave de valores mais o custo de junção, que em uma tabela grande com uma pequena porcentagem de seleção deve ser razoável.