Как я могу использовать Boost multi_index для объединения трех ключей в одно выражение запроса? Рассмотрим следующую структуру индекса:
struct indexItems {
uint64_t x; // assume non-unique index
std::string y; // assume unique within x
std::string z; // assume unique within y
};
Допустим, я хочу запросить элементы с помощью бинарного оператора AND: x=1 AND y="a" AND z="s". Как я могу это сделать?
Все запросы и вставки будут использовать комбинацию x+y+z для вставки, обновления и удаления элементов из multi_index. Кроме того, мне нужно перебрать y и z, отсортированные по x.
Примеры, которые я нашел до сих пор, касаются только одиночных индексов.