【发布时间】:2016-11-12 07:12:38
【问题描述】:
我需要在 SQL Server 中生成随机数并将这些代码写入表中。我使用的SQL语句如下:
while (select count(code) from tb_random) <1000000
begin
SET NOCOUNT ON
declare @r int
set @r = rand()*10000000
insert into tb_random values(@r)
end
完成此查询需要 20 多小时。你能给我一个解决这个性能问题的想法吗?
【问题讨论】:
-
现在你有了数字,你需要再做一次吗?另外,你意识到你不一定有唯一的数字,对吧?
-
实际上,我需要超过 10,000,000 个代码。这意味着我必须重复10次以上。我知道如何创建唯一 ID。我只关心性能并且可以应用其他随机算法。谢谢
-
你的 tb_random 模式是什么?
-
如果你告诉我们你为什么需要这个可能会有所帮助。这对我来说似乎不对,如果我们知道更多,您最终可能会得到一个简单的解决方案......
-
感谢 JBrooks。下面的想法帮助我解决了这个问题。
标签: sql sql-server random