Adaptive Server Anywhere не поддерживает подзапросы в предложении FROM?

Я пытаюсь выполнить SQL-запрос к базе данных Adaptive Server Anywhere. Вот:

SELECT count(*) AS s
FROM (
    SELECT column1, count(*) AS n
    FROM table1
    GROUP BY column1
    HAVING n > 1
)

В подзапросе я хочу получить все строки, которые являются дубликатами, а во внешнем запросе я хочу получить количество строк, которые являются дубликатами.

Но база данных говорит, что у меня возникает синтаксическая ошибка всякий раз, когда я использую подзапрос в предложении FROM. Это не поддерживается?

Я выполняю запрос в интерактивном SQL в Powerbuilder. Я подключен к своей базе данных с использованием ODBC.

2 ответа

Решение

Я ничего не знаю об Adaptive Server, но попробуйте добавить псевдоним для подзапроса в операторе from, например:

SELECT count(*) AS s
FROM (
    SELECT column1, count(*) AS n
    FROM table1
    GROUP BY column1
    HAVING n > 1
) result -- add this

MSSQL нужно, чтобы это работало, может быть, AS это тоже нужно.

ASA не поддерживает таблицы "в памяти", как это. Вам нужно будет создать временную таблицу, а затем вывести отсчет.

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