都说彩票是假的 截止售票后有2小时的统计时间,我感兴趣的这个是怎么个算法?比如说 现在数据库里有1亿注彩票,本次派奖池底的20% 
1等奖占总派奖总额的30%  1-10注
2等奖占总派奖总额的20%  100-200注
3等奖占总派奖总额的5%   1000注 左右
4等奖占总派奖总额的5%   10000注 左右
5等奖占总派奖总额的10%  100000注 左右
6等奖占总派奖总额的30%  1000000注 左右这个怎么个算法?从低下往上找?  还有 这样大型的运算 现实中彩票的购买数量都是大于1亿注的 这样的数据运算起来 需要什么样的机器多少时间?比如数据库里记录  表:caipiao  
___________________________________________________________________________________
列1:ID | 列2: s1 | 列3: s2 |列4: s3 | 列5: s4 | 列6: s5 | 列7: s6 |列8: s7 |
------------------------------------------------------------------------------------
s1-s7= 彩票里的7个号这个怎么个写法可以计算出本次该出什么号?或者说下那些语句可以实现算法

解决方案 »

  1.   

    一般彩票都是从大到下的,你就算
    select s1,s2,s3,s4,s5,s6,s7,count(1)/(select (1) from 表)
    from 表
    group by s1,s2,s3,s4,s5,s6,s7 
    看他们的概率,如果有概率相同的并符合你要求的,就再取个随机 rowid()1亿的数据,感觉好大,没接触过...
      

  2.   

    至于短信通知领奖的系统,设计上肯定不是S1-S7这7个字段,否则把系统OR死都有可能。
      

  3.   


    我短路了,开7个号码,奖项就全部定了,等级奖的比例也不难算,计算出应该开哪7个号码,根据我的经验来估计,最多15分钟出结果。你的意思是随机挑选已买彩票里的一组数据 然后做统计,如果符合预期结果 就定下公布?那具体SQL脚本他们是怎么写的?通过什么函数?15分钟有点紧张了吧
      

  4.   


    不是用他来买 是想了解他的算法,这么多数据是如何整理的。这和我们其他的SQL语句查询有很大的区别。
    以往目标都是固定的 或者基本判定原则的,而这种应用根本开始就不知道目标是什么
    希望你没每次买什么都是1等奖
      

  5.   


    我短路了,开7个号码,奖项就全部定了,等级奖的比例也不难算,计算出应该开哪7个号码,根据我的经验来估计,最多15分钟出结果。你的意思是随机挑选已买彩票里的一组数据 然后做统计,如果符合预期结果 就定下公布?那具体SQL脚本他们是怎么写的?通过什么函数?15分钟有点紧张了吧一点都不难,1-16蓝,1-33红,统计处各个数字的注数,注数最少的几个数字,基本上八九不离十了,数据库验证一下就可以开奖了。既然是出猫,封盘之后也是可以INSERT一等奖的号码,你懂的。