Подзапросы

Географические операторы, в частности, используются в комбинации с подзапросами.

Аксиома допускает использование подзапросов в SQL-запросе. Подзапрос - это запрос, задаваемый в окошке с условием диалога SQL-запрос. Аксиома сначала выполняет подзапрос, а затем уже использует его результаты в основном SQL-запросе.


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


Придется использовать следующая выборка:

Выбрать колонки: (*)

Из таблиц: RUSSIA

С условием:Население_1990 > (select Avg(Население_1990) from RUSSIA)


При работе с подзапросами следует учитывать:


    • В подзапросах можно использовать таблицы, не упомянутые в окошке из таблиц. Но такие таблицы, конечно, должны быть перечислены в предложении «From» подзапроса (как показано в предыдущем примере).
    • Если с подзапросом используется ключевое слово "any" или "all", он должен выдавать только одну колонку. Следующее предложение в запросе некорректно потому, что возвращает две колонки (state_name и Pop_1990):
      any(select state_name, pop_1990 from states)
    • Если к подзапросу не относятся слова "any", "all" или "in", он должен возвращать единственное значение. Не допускается использование следующего варианта запроса потому, что возвращаются несколько строк:
      obj within (select obj from states where POP_1990 > 2000000)
    • Если к подзапросу не относятся слова "any", "all" или "in", вы не можете использовать предложение Сгруппировать по колонкам в подзапросе.
    • Нельзя вкладывать подзапросы друг в друга, т.е. в операторе запроса может быть не более одного подзапроса.