Ошибка символа обратной косой черты в Postgresql Advanced SQL
Я пытаюсь выполнить этот запрос на Postgresql:
SELECT city, year, SUM(raindays)
FROM rainfall
GROUP BY city,year
HAVING SUM(raindays)>120
ORDER BY city
\crosstabview
По команде он работает очень хорошо, однако в любом контексте, основанном на JDBC, он выдает ошибку: SQL Error [42601]: ERROR: syntax error at or near "\"
Обратная косая черта за перекрестным просмотром не распознается. Как я могу преодолеть это?
Любая помощь будет высоко ценится.
1 ответ
\crosstabview
это psql
команда, а не postgreSQL. Он интерпретируется клиентской оболочкой psql как директива форматирования экрана. Вы не можете включить его в SQL
Смотрите раздел "Мета-команды" в документации psql.
Чтобы получить похожий вывод, вам, возможно, потребуется удалить \crosstabview из командной строки и написать цикл, собирающий данные вашего запроса в формате для отображения.