;with temp(id, , 覦) as ( select 'a', 8, '100' union all select 'a', 8, '1000' ) select * from ( select * , row_number() over(order by * convert(int, convert(binary(1), newid()))) rowno from temp ) t where rowno = 1