2016-08-15 4 views
2

Я собираюсь использовать одно и то же значение во множестве операторов в выражении SQL. Таким образом, можно объявить и присвоить значение переменной в начале запроса и передать ее значение? (Я пишу план выполнения в WSO2 DAS)Можем ли мы использовать переменные в операторах Siddhi SQL?

ответ

0

Это не поддерживается на данный момент. Однако поддержка этого была обсуждена, поэтому это может быть реализовано в будущей версии.

Если вы хотите сохранить значение и использовать его в запросе, доступные в настоящее время способы являются:

  • Полагая, что значение в indexed event table и затем делать объединение с таблицей событий, чтобы прочитать это значение, когда оно обязательный.

индексированных в памяти Таблица событий внутри использует Хеш-карту, поэтому вы можете использовать один для хранения переменных, таким образом, что ключ HashMap будет имя вашего Название переменной и значение hashmap будет значением вашей переменной.

Однако я чувствую, что выше решение слишком сложно для вашего требования.

+0

Спасибо за объяснение ... –

+0

@PasinduJw настоящее время я использую Siddhi QL, и у меня есть странное требование. Входные данные приведены в цитате, например. «яблоко», а выход будет: яблоко. Я пробовал использовать выбрать substr (sensorId, 1,4) as out Вставить в outputStream; Чем я получаю сообщение об ошибке «зиЬзЬги не является ни функцией, ни агрегированный атрибут» ОДНАКО я попытался с помощью JS, чтобы подстроки его и я получил: jdk.nashorn.internal.runtime.ParserException: : 1 : 22 Отсутствие пробела после числового литерала var data = ["" tempID = 1wef "", 0] у вас есть альтернативное решение; или я делаю что-то неправильно –

+0

Правильный способ использования функции substr в сиддхи выглядит следующим образом: выберите str: substr (sensorId, 1,4) как partOfString. Вы также можете использовать функцию replaceAll. –

Смежные вопросы