本博客http://blog.csdn.net/livelylittlefish 贴 出作 者(三二一@小鱼)相关研究、学习内容所做的笔记,欢迎广大朋友指正!
1. 引子
在 实例 (1) 、实例 ( 续 2) 、实例 ( 续 3) 、实例 ( 续 4) 、实例 ( 续 5) 这个系列的例子中,我们演示的是对多个索引的整体查询,即对元组 r=(x,y,z,a,b) ,其中 为索引, 为一个数据对,我们在对集合 R={r} 这个多索引的数据表查询时,直接给定索引 。
如果我们想查询 x 索引值为 x0 的所有数据,或者查询 x 、 y 索引值分别为 x0 、 y0 的所有数据,即这种组合查询,该如何查?上述系列的例子能否查得到?如果查不到,该如何调整 MyContainer_T 的结构?
有兴趣的读者可以自行实验,上述系列的例子不支持这种组合查询。
那么组合查询如何改写 MyContainer_T 的结构?这就是本系列要讲的 组合查询 。
关于组合查询的讲解,可以参考后续的文章。
2. 修改 MyContainer_T 的结构
struct x_key :composite_key <
MyTest,
BOOST_MULTI_INDEX_MEMBER (MyTest, int, x)
>{};
struct xy_key :composite_key <
MyTest,
BOOST_MULTI_INDEX_MEMBER (MyTest, int, x),
BOOST_MULTI_INDEX_MEMBER (MyTest, int, y)
>{};
struct xyz_key :composite_key <
MyTest,
BOOST_MULTI_INDEX_MEMBER (MyTest, int, x),