У меня есть пространство народы:
- id
- имя
- возраст
с двумя индексами:
peoples = box.schema.space.create('peoples', {engine = 'memtx', field_count = 3, if_not_exists = true})
peoples:create_index('primary', {type = 'TREE', unique = true, parts = {1, 'unsigned'}, if_not_exists = true})
peoples:create_index('by_name_age', {type = 'TREE', unique = false, parts = {2, 'STR', 3, 'unsigned'}, if_not_exists = true})
и с данными:
peoples:auto_increment{ 'name_1', 10 }
peoples:auto_increment{ 'name_1', 11 }
peoples:auto_increment{ 'name_1', 12 }
Мне нужно отбирать народы по имени и возрасту больше, чем какое-то значение. Например, я хочу выделить всех «Alex» с возрастом> 10, ожидая следующего результата:
[1, 'Alex', 11]
[2, 'Alex', 12]
Пытаюсь выполнить запрос:
peoples.index.by_name_age:select({'Alex', 10}, {{iterator = box.index.EQ},{iterator = box.index.GT}})
но получить результат
[1, 'Alex', 10]
Как я могу использовать разные итераторы для частей индекса имени и возраста?