Teiid Redshift Translator не поддерживает некоторые конструкции Redshift SQL

Я настроил источник данных красного смещения в teiid, используя траслатор красного смещения. Но некоторые функции SQL в красном смещении не имеют поддержки при использовании с teiid. для примера я получаю следующую ошибку при развертывании VDB

TEIID30068 The function 'nvl2(v_skey, c_skey, s_key)' is an unknown form.  Check that the function name and number of arguments is correct.
11/29/2017 12:13:01 PM[Server:server-one] 06:43:01,886 WARN  [org.teiid.RUNTIME] (Worker25_async-teiid-threads41) TEIID40073 The metadata for the VDB ReportRedshift.1 is loaded, however it is not valid. Check models for errors to correct the metadata and re-deploy: ReportRedshift

некоторые другие конструкции Redshift SQL, такие как ISNULL, также не работают

1 ответ

Решение

Нечто подобное NVL2 еще не представлено как функция нажатия и не является системной функцией Teiid. Вы можете обойти это, определив функцию в своей физической модели, однако для строгой типизации вам придется добавить вариант для каждой сигнатуры типа, которая вам нужна. В противном случае вам нужно будет отправить запрос на улучшение - https://issues.jboss.org/projects/TEIID

Что значит ISNULL не работает? Вы говорите о функции или предикате IS NULL?

Другие вопросы по тегам