sql - SQL Server 可以自动将随机 int 分配给 IDENTITY 列吗?
问题描述
我有一个大约 50,000 行的表。每天删除数据,并导入大约50,000行的最新数据。这是一个日常过程。
数据需要在输出中按随机顺序排序,因此我们之前在 Access 中执行此操作的方式是将标识设置为“随机”。这显示了一个随机整数,因此当通过此列对数据进行排序时,它会很好地混杂在一起。
如何使用 SQL Server 复制它?我似乎无法弄清楚如何使用种子和增量函数来实现这一点,并且我知道分配一个随机数是好的,直到它拉出一个副本(无论几率多么小)。如果可能的话,我真的很想避免在它的顶部运行另一个程序来“插入”随机数,但如果这是唯一的方法,我会放弃。
解决方案
为什么不将其添加到您想要的查询中?
order by newid()
我看不出有理由为这样的事情覆盖身份。
如果您愿意,您可以newid()
将“身份”列用作“身份”列的默认值,而不是identity()
. 出于排序的目的,这将给出一个“随机”的 id。
推荐阅读
- parallel-processing - Ansible:如何在有时间间隔的情况下并行执行 ansible playbook 中的任务
- image - 图像二进制解释:未知图像格式
- github - Gist 未在 Medium 中完全显示
- swift - Swift:几个 WKWebview 为同一个域 Cocoa 应用程序设置不同的 cookie
- python - 如何以数字方式在python中对字符串进行排序
- python - 过滤掉不相关的 cProfile 输出
- django - Django Ajax CSRF 验证失败
- physics - 创建戒指 ammo.js(三)
- android - Google Play Alpha:此帐户无法使用应用程序
- shell - ShellScript 在会话前命令 (PowerCenter) 上不起作用