Как вы используете MySQL в Mulesoft для поиска записей, содержащих значения массива?MySql

Форум по Mysql
Ответить
Anonymous
 Как вы используете MySQL в Mulesoft для поиска записей, содержащих значения массива?

Сообщение Anonymous »

У меня есть таблица с названием Document_population с столбцом с именем "document_id".
Я хочу запросить таблицу в Mulesoft (с помощью Studio Anypoint), чтобы вернуть все строки с помощью Document_id, который соответствует любому идентификатору в моем массиве с именем " DocumentIds ", которые могут выглядеть как [123, 456, 789]. Формат.
Оригинальная попытка:
sql Query Text:

Код: Выделить всё

SELECT * FROM document_billing WHERE document_id IN :documentIDs;

Входные параметры:

Код: Выделить всё

{
"documentIDs": vars.documentIDs
}
проблема : sql Query Syntax Error
Попробое решение 1:
text Query Sql:

Код: Выделить всё

SELECT * FROM document_billing WHERE document_id IN :documentIDs;

Входные параметры:

Код: Выделить всё

{
"documentIDs": vars.documentIDs joinBy ","
}
Проблема: Результирующий SQL-запрос выглядит следующим образом:

Код: Выделить всё

SELECT * FROM document_billing WHERE document_id IN ("123, 456, 789")< /code>
, который возвращает строки с документом_ид "123, 456, 789" вместо строк с Document_ID 123, 456 или 789. < /p>
Попробое решение 2 : < /p>
%dw 2.0
output application/java
var query = "SELECT * FROM document_billing WHERE document_id IN ("
---
query ++ (payload.documentIDs joinBy (",")) ++ ")"
SQL -запрос текст:

Код: Выделить всё

:document_billing_query;

Входные параметры:

Код: Выделить всё

{"document_billing_query": vars.document_billing_query}

Проблема : неверный запрос
Попробое решение 3:

Код: Выделить всё

%dw 2.0
output application/java
var query = "SELECT * FROM document_billing WHERE document_id IN ("
---
query ++ (payload.documentIDs joinBy (",")) ++ ")"
SQL -запрос текст:

Код: Выделить всё

#[$(document_billing_query)]
Проблема: неверный запрос
Попытка решения 4:

Код: Выделить всё

%dw 2.0
output application/java
var query = "SELECT * FROM document_billing WHERE document_id IN ("
---
query ++ (payload.documentIDs joinBy (",")) ++ ")"
SQL -запрос текст:

Код: Выделить всё

#["$(document_billing_query)"]
Проблема: неверный запрос

Подробнее здесь: https://stackoverflow.com/questions/793 ... f-an-array
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «MySql»