我有大约1百万条记录,女巫在24天(每天1个)中回答问题。
我要完成的工作是全天收集所有正确答案,然后进行抽签选择,例如,如果订户正确回答了所有24个答案,那么与被正确回答的订户相比,他/她被选中的可能性更高回答。
我正在使用Linq-to-Sql,因为我更愿意使用它而不是纯T-SQL,即使这是要移植到T-SQL,但是LinqPad可以帮助我,所以这就是我到目前为止:
// all correct answers id's
var correct = from a in JK_ChallengeAnswers
where a.correct
select a.challenge_answer_id;
// all correct answers
var query = from cr in JK_ChallengeResponses
where correct.Contains(cr.challenge_answer_id)
select cr;
query.Count().Dump(); // 978144
var random = new Random();
int pos = random.Next(query.Count()); // random select
query.Skip(pos).Take(1).Dump(); // get one...
这是直截了当的……而且是线性的,没有“票务”方法,这里的人回答了一个问题,即回答了全部24个问题的确切比例。
我将如何尝试彩票方法,下一步应该怎么做?
无需显示代码,我可以得到这些,只有步骤可以了,因为我不知道如何得到它们。
最佳答案
创建一个视图,其中包含正确回答的所有人员的姓名。然后,您可以使用随机数生成器来选择其ID与随机数匹配的人。如果您需要更多帮助,请问我。
编辑
对我来说,彩票方法已经为您服务,因为每个人每天都可以猜测24天的答案。这意味着他们在您的表中有24个答案,外键指向正确的答案。通过这样做,如果我将24个条目提交到数据库中,则我更有机会获得正确答案。这将使我的方法起作用。
让我知道您是否对此有不同的想法。
关于c# - 彩票方式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14030529/