本文原文地址: http://www.cnblogs.com/asxinyu/p/4476287.html
2年前刚学会XCode的时候,对XCode研究比较多,总结过一篇文章: 关于泛型基类的相关知识 ,其中对XCode的泛型基类的作用和用法做了一个初步的概述,这些年用XCode做过很多小玩具,但由于项目太小,基本很难用得上泛型基类,因为要求有一些公共的字段才比较有用。这次的赔率指数数据表由于表的结构很多字段都相同,才想到用这个东西,的确简单方便了很多,逻辑也很清晰。非常给你。具体的思想参考上面那篇文章,这里只给出一个泛型基类,继承的截图,以后在代码中再着重介绍。
上面是泛型基类,实际的指数表,会进行继承,这样公共的查询方法就只需要写一次就OK了:
具体的暂时就不过多展开了,好好看那篇总结文章,应该会有收获。所以我们先看看泛型基类对应的表的结构
泛型基类不直接对应表,是作为一个实体基类,为了节省后面的空间,因为所有的指数信息表都要继承该类,所以基类的公共字段在这里发布出来,后面的相关表就直接只写独有的字段,公共字段就省略掉了。主要就是公司名称和赛事名称,场次编号以及时间这些公共信息。
编号 | 字段名 | 类型 | 长度 | 描述 | 备注 |
1 | Id | int | 10 | 编号 | 自增主键 |
2 | CompanyID | int | 10 | 公司编号 | |
3 | CompanyName | nvarchar(20) | 20 | 公司名称 | |
4 | EventName | nvarchar(20) | 20 | 赛事名称 | 分库用 |
5 | MatchID | int | 10 | 场次编号 | 索引 |
6 | UpdateTime | datetime | 3 | 更新时间 |
以前版本将胜平负赔率指数称为欧赔指数,不太准确,这一版本统一改为胜平负指数,指数记录都是指某个赔率公司对某场比赛开出的赔率。胜平负指数的主要内容主要胜平负的赔率和赔率开出的相关信息,如公司,时间,赛前间隔等。也是按照 公司+联赛 进行分库的。看看基本的表结构, 注意基类字段省略了 :
编号 | 字段名 | 类型 | 长度 | 描述 | 备注 |
7 | TimeInterval | float | 53 | 赛前间隔 | |
8 | Odds3 | float | 53 | 主胜赔率 | |
9 | Odds1 | float | 53 | 主平赔率 | |
10 | Odds0 | float | 53 | 主负赔率 | |
11 | LossRatio | float | 53 | 赔付率 | |
12 | KellyIndex3 | float | 53 | 凯利指数3 | |
13 | KellyIndex1 | float | 53 | 凯利指数1 | |
14 | KellyIndex0 | float | 53 | 凯利指数0 | |
15 | KellyVar3 | float | 53 | 凯利方差3 | |
16 | KellyVar1 | float | 53 | 凯利方差1 | |
17 | KellyVar0 | float | 53 | 凯利方差0 |
半全场指数和胜平负指数类似,只不过一个是半场+全场,1个是全场的结果,结果可能性多了,所以赔率肯定是要高的。当然这个玩法还是比较有趣的,有时间再细说。半全场指数表的开盘公司是非常多,但由于数据源的关系,个人能力有限,所以可用的公司没有胜平负赔率那么多,但是这也没关系,有几家就足够了,所以也进行了分库。看看基本结构, 注意基类字段省略了 :
编号 | 字段名 | 类型 | 长度 | 描述 | 备注 |
7 | Odd33 | float | 53 | 胜胜 | |
8 | Odd31 | float | 53 | 胜平 | |
9 | Odd30 | float | 53 | 胜负 | |
10 | Odd13 | float | 53 | 平胜 | |
11 | Odd11 | float | 53 | 平平 | |
12 | Odd10 | float | 53 | 平负 | |
13 | Odd03 | float | 53 | 负胜 | |
14 | Odd01 | float | 53 | 负平 | |
15 | Odd00 | float | 53 | 负负 |
大小盘国彩的竞彩以及北单暂时都没有大小盘,但考虑到数据的完整性,本项目还是采集了大小盘的数据,和前面的结构类型,也是分库进行。结构很简单:
编号 | 字段名 | 类型 | 长度 | 描述 | 备注 |
7 | TimeInterval | float | 53 | 赛前间隔 | |
8 | Handicap | float | 53 | 盘口 | |
9 | Big | float | 53 | 大球赔率 | |
10 | Small | float | 53 | 小球赔率 | |
11 | LossRatio | float | 53 | 赔付率 |
总进球玩法目前国彩是有的,目前是0-7+,和国外的差不多,所以这个数据还是比较有用的,唯一遗憾的是,数据源中总进球的开盘公司基本只有几家。不管怎么样,先采集再说。这个表的结构不仅包括了国彩的情况,还包括了区间的情况,以及单双进球的赔率。所以功能比较多,根据实际的数据源使用:
编号 | 字段名 | 类型 | 长度 | 描述 | 备注 |
7 | Odd0 | float | 8 | 0球 | |
8 | Odd1 | float | 8 | 1球 | |
9 | Odd2 | float | 8 | 2球 | |
10 | Odd3 | float | 8 | 3球 | |
11 | Odd4 | float | 8 | 4球 | |
12 | Odd5 | float | 8 | 5球 | |
13 | Odd6 | float | 8 | 6球 | |
14 | Odd7 | float | 8 | 7球 | |
15 | Odd01 | float | 8 | 0-1球 | 欧赔用 |
16 | Odd23 | float | 8 | 2-3球 | 欧赔用 |
17 | Odd46 | float | 8 | 4-6球 | 欧赔用 |
18 | OddSingle | Float | 8 | 单数球 | 欧赔用 |
19 | OddDouble | Float | 8 | 双数球 | 欧赔用 |
这些常见的指数表就介绍到这里,下一篇将继续介绍其他指数表的结构。