У меня есть запрос SQL
, который я хочу реализовать в типе запроса Javascript
в Mark Logic.Цель состоит в том, чтобы вернуть все URIs
результата запроса.
Ниже приведен SQL-запрос, который я хочу преобразовать:
SELECT * FROM DOCUMENT_TABLE
WHERE WADCTO IN ('WM', 'WO')
AND (WASRST NOT IN ('02', 'M', 'M9')) AND (WASTRX = 0)
Здесьмой текущий запрос Javascript, который я тестировал в консоли запросов, но не возвращает то же количество строк, что и запрос SQL:
cts.uris(null, null,
cts.andQuery([
cts.collectionQuery("JDEdwards"),
cts.collectionQuery("WorkOrder_Document"),
cts.andQuery([
cts.orQuery([
cts.elementRangeQuery(fn.QName("http://www.example.com/ads/JDEdwards/document", "WADCTO"),"=","WO"),
cts.elementRangeQuery(fn.QName("http://www.example.com/ads/JDEdwards/document", "WADCTO"),"=","WM")
]),
cts.andQuery([
cts.elementRangeQuery(fn.QName("http://www.example.com/ads/JDEdwards/document", "WASRST"),"!=","02"),
cts.elementRangeQuery(fn.QName("http://www.example.com/ads/JDEdwards/document", "WASRST"),"!=","M"),
cts.elementRangeQuery(fn.QName("http://www.example.com/ads/JDEdwards/document", "WASRST"),"!=","09")
]),
cts.elementRangeQuery(fn.QName("http://www.example.com/ads/JDEdwards/document", "WASTRX"),"=","0")
])
])
);
Обратите внимание, что у меня есть индекс диапазона настройки для элементов WADCTO
, WASRST
и WASTRX
.
Что-то отсутствует илине так с логикой моего кода?