SQL select from table with alias (Oracle9i)


Согласно документации Oracle для оператора SELECT должна быть предусмотрена возможность псевдонимирования имен таблиц с помощью псевдонимов без ключевого слова AS или с его помощью. Однако наложение таблиц с ключевым словом AS приводит к ошибке:

ORA-00933: SQL-команда не завершена должным образом

Например, следующее утверждение завершается ошибкой выше:

SELECT COUNT(*) FROM MY_TABLE AS A;

После удаления ключевого слова AS он выполняется, как и ожидалось.

Может ли кто-нибудь прокомментировать это? Является есть ли способ заставить работать приложение AS для сглаживания таблиц?

P. S. Я с помощью утилиты генерации кода, которые переводят некоторые Java-код в SQL во время выполнения. Эта утилита принудительно использует псевдонимы с AS.

1 2

1 ответ:

Oracle не принимает as для псевдонимов таблиц, и я не вижу способа заставить его работать.

Неужели вы ничего не можете сделать на Java? Что касается псевдонимов столбцов, то они необязательны в Oracle, поэтому вы можете найти все " AS " в сгенерированной строке и удалить их (таким образом, удаляя как для псевдонимов столбцов, так и для псевдонимов таблиц). Есть ли такой вариант?