Sru*_*uly 1 c# random performance combinations
我的数据库中有一张表,其中包含一个人员列表.我需要每天创建一个随机好友列表.
这个想法是每天每个人都与当天不同的随机人物配对.
由于桌子可能会变得非常大,我想知道做这样的事情最好的方法是什么?
我想到了2个想法,但我对它们的表现并不那么肯定.
1)我使用随机数生成器随机选择两个ID.问题是我必须经常确保数字还没有被调用,当我接近列表的末尾时,这可能变得非常慢.
2)在列表中与他们下面的人一起开始每一个人,然后每天向下移动一个,直到你到达底部,然后我回到顶部.
还有其他想法吗?
谢谢
也许你可以创建一个随机对表进行排序的查询,然后从上到下配对人.第一个条目与第二个条目配对,第三个条目与第四个条目配对,依此类推.
SQL Server示例:
SELECT * FROM Table ORDER BY NEWID()
Run Code Online (Sandbox Code Playgroud)