@Bigma ну я сделал по-колхозному, получил список одних значений, потом список других значений и дальше через функции объединял. Коряво, но задачу решил.
А так вопрос остается открытым, так как я уже не впервые с такой проблемой сталкиваюсь и костыли при большом количестве значений тормозят скрипт. Терпимо, но хочется лучше :)