Я пытаюсь запустить запрос в Spotfire (7.8) с сервера MS SQL.
Все работает хорошо с простыми запросами, однако я не могу заставить работать общие табличные выражения.
Это очень простой пример, который без проблем запускается из студии MS SQL Server Management:
with test as ( select * from myTable)
select * from test
В Spotfire я получаю следующую ошибку:
Произошла ошибка при выполнении запроса во внешнем источнике данных.
Внешняя ошибка:
Неправильный синтаксис рядом с ключевым словом "with".
Неправильный синтаксис рядом с ключевым словом "with". Если этот оператор является общим табличным выражением, предложением xmlnamespaces или предложением контекста отслеживания изменений, предыдущий оператор должен заканчиваться точкой с запятой.
Неверный синтаксис рядом с ")".
Я пробовал добавить ;
, как было предложено, также здесь, но это не помогло:
Произошла ошибка при выполнении запроса во внешнем источнике данных.
Внешняя ошибка:
Неверный синтаксис рядом с ';'.
Неверный синтаксис рядом с ')'.
Я немного поиграл, добавляя ;
s в различные места (после окончания операторов select, закрывающих скобок ...), но не мог заставить его работать.
Мой настоящий запрос очень длинный, поэтому собрать все вместе и избавиться от CTE на самом деле не вариант.
Просто для пояснения, я безуспешно пробовал все нижеприведенные позиции, а также комбинации:
;with test as ( select * from myTable)
select * from test
with test as ( select * from myTable;)
select * from test
with test as ( select * from myTable);
select * from test