天天看點

朋友要一個随機生成電話号碼的SQL語句

朋友今天突然問說想要一個..随機生成電話号碼的SQL語句.内容是 6 + 7位的随機數...于是寫了一個..

select '6' + left(cast( (cast(ceiling(rand()*10000000) as int) + 1000000) as char),7)

然後在執行的時候..發現居然全是相同的值..為啥呢?因為種子是相同的..于是修改了種子值..

select '6' + left(cast( (cast(ceiling(rand(checksum(newid()))*10000000) as int) + 1000000) as char),7)

這樣理論上是不會相同了..

嗯..然後又看了一下.發現貌似寫的有問題..太麻煩了..

select cast((cast(ceiling(rand(checksum(newid()))*10000000) as int) + 60000000) as char)

這樣更簡單一些..嘎嘎~