select top 10 percent * from [yourtable] order by newid()
select top 10 percent * from [yourtable] order by newid()
- <code>
- select top 10 percent * from [yourtable] order by newid()
- </code>
<code>
select top 10 percent * from [yourtable] order by newid()
</code>
In response to the "pure trash" comment concerning large tables: you could do it like this to improve performance.
select * from [yourtable] where [yourPk] in
(select top 10 percent [yourPk] from [yourtable] order by newid())
select * from [yourtable] where [yourPk] in
(select top 10 percent [yourPk] from [yourtable] order by newid())
- <code>
- select * from [yourtable] where [yourPk] in
- (select top 10 percent [yourPk] from [yourtable] order by newid())
- </code>
<code>
select * from [yourtable] where [yourPk] in
(select top 10 percent [yourPk] from [yourtable] order by newid())
</code>
The cost of this will be the key scan of values plus the join cost, which on a large table with a small percentage selection should be reasonable.