Правило AWS IoT startwith (), endwith () не работает с атрибутом JSON, в имени которого есть дефис - PullRequest
0 голосов
/ 22 мая 2019

Я хочу использовать правило IoT AWS для запуска определенной лямбды на основе значения атрибута входящих сообщений. Кажется, проблема в том, что в имени атрибута содержится дефис.

Мое сообщение выглядит так:

{
  "testdata": "abc",
  "test-data": "abc"
}

Если я запускаю лямбду с помощью следующего AWS IoT SQL, это работает:

select * from 'my/test' Where startswith(testdata, 'abc')

Но это не сработает, если я использую этот SQL:

select * from 'my/test' Where startswith(test-data, 'abc')

Можно ли избежать дефиса или есть другой способ использовать имена атрибутов с дефисом?

1 Ответ

0 голосов
/ 10 июня 2019

В справочнике AWS iot SQL дефис является оператором вычитания при использовании в предложении WHERE, так что нет, вы не можете использовать его как дефис, как пытаетесь сделать.

...