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 не поддерживает таблицы "в памяти", как это. Вам нужно будет создать временную таблицу, а затем вывести отсчет.