Сортировать по в esql

У меня есть такое xml-сообщение

<Body>
   <test>
       <element>2</element>
       <element>6</element>
       <element>1</element>
   </test>
</Body>

и я хочу выбрать элемент с наименьшим номером

что-то вроде этого

SET data[] = SELECT e FROM Output.Body.test.element[] AS e ORDER BY e.element;

Я бы сделал это, если бы "ORDER BY" поддерживается в esql select, но это не так. Есть ли другой способ сделать что-то подобное?

Я знаю, что операторы sql могут поддерживаться, если я использовал оператор PASSTHRU, который напрямую передает оператор в СУБД, но я не использую здесь СУБД, я выбираю из сообщения xml.


person Kingo Mostafa    schedule 11.09.2016    source источник
comment
Боюсь, вам нужно будет провести сортировку самостоятельно, либо реализовать ее на ESQL, либо использовать какую-нибудь библиотеку Java.   -  person Attila Repasi    schedule 11.09.2016
comment
Учитывая отсутствие поддержки ORDER BY, вам нужно будет перебрать список и выбрать элемент с наименьшим номером, как писал Аттила.   -  person Andre Vieira    schedule 12.10.2016


Ответы (1)


С помощью следующей ссылки вы можете написать процедуру быстрой сортировки, чтобы упорядочить свой список. Затем вам нужно взять первый элемент списка.

Источник: http://www.mqseries.net/phpBB2/viewtopic.php?p=273722#27372

(Я разместил ссылку только потому, что код процедуры довольно большой и может быть обновлен его создателем)

person VincentS    schedule 27.07.2017