有一个用户抽奖表 因为有如下的查询需求
查询用户今日抽奖次数
查询用户是否中了实物奖品
故创建了如下的索引
KEY `mobile` (`mobile` , `draw_date`), #用户和抽奖日期
KEY `mobile_2` (`mobile` , `award_type`) #用户和奖品类型
对Mysql索引
突然感到有点困惑, 是不是相当于Mysql内部维护了如下的两个Map
Map<String, Map<Date, List<UserDraw>>> mobileDrawDateMap ;
Map<String, Map<String, List<UserDraw>>> mobileAwardTypeMap
查询的时候相当于执行下面的代码
//得到某用户今日抽奖次数
int drawCount = mobileDrawDateMap.get(mobile).get(drawDate).size();
//判断用户是否中了大奖 大奖奖品类型为20
boolean isWinBigAward = !mobileAwardTypeMap.get(mobile).get("20").isEmpty();
是否可以这样类比Mysql
的索引?
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。