select DateAdd(d, ROUND(DateDiff(d, '1950-01-01', '1999-12-31') * RAND(), 0), '1950-01-01')
EDIT
Jika ini akan dieksekusi sebagai bagian dari pernyataan yang mengembalikan beberapa baris atau sebagai bagian dari pembaruan, RAND() akan mengembalikan nilai tunggal untuk keseluruhan hasil. Untuk itu RAND(CHECKSUM(NEWID())) dapat digunakan.
select DateAdd(d, ROUND(DateDiff(d, '1950-01-01', '1999-12-31') * RAND(), 0), '1950-01-01'),
DateAdd(d, ROUND(DateDiff(d, '1950-01-01', '1999-12-31') * RAND(CHECKSUM(NEWID())), 0), '1950-01-01')
from master..spt_values where type = 'P'