Questo è un duplicato di SO# 19412. Ecco la risposta che ho dato lì:
select top 1 * from mytable order by newid()
In SQL Server 2005 e versioni successive, puoi utilizzare TABLESAMPLE per ottenere un campione casuale ripetibile:
SELECT FirstName, LastName FROM Contact TABLESAMPLE (1 ROWS) ;