SQL Server可以自动将随机整数分配给IDENTITY列吗?

时间:2019-01-23 15:02:45

标签: sql sql-server tsql

我有一个约50,000行的表。每天将删除数据,并导入大约50,000行的最新数据。这是每天的过程。

需要在输出中将数据分类为随机顺序,因此我们之前在Access中进行此操作的方式是将身份设置为“随机”。它显示了一个随机整数,因此当通过此列对数据进行排序时,会很好地弄乱它。

如何使用SQL Server复制它?我似乎无法弄清楚使用种子和增量函数如何实现这一点,并且我知道分配随机数是好的,直到它拉出一个重复数(但是可能性很小)。我真的很想避免不得不在其顶部运行另一个过程来尽可能地“插入”随机数,但是如果这是唯一的方法,则会让步。

1 个答案:

答案 0 :(得分:2)

为什么不将其添加到您想要的查询中?

order by newid()

我看不出有理由覆盖这样的身份。

如果愿意,可以将newid()用作“身份”列的默认值,而不要使用identity()。出于排序目的,这将给出一个“随机” ID。