Глава 6. Запросы
Подзапрос формирует временную таблицу в таком виде:
model
| fare_conditions | num
---------------------+-----------------+-----
Airbus A319-100
| Business
| 20
Airbus A319-100
| Economy
| 96
...
Sukhoi SuperJet-100 | Business
| 12
Sukhoi SuperJet-100 | Economy
| 85
(17 строк)
А в главном (внешнем) запросе используется агрегатная функция string_agg для
формирования результирующего значения на основе сгруппированных строк. Эта
функция отличается от агрегатных функций avg, min, max, sum и count тем, что воз-
вращает не числовое значение, а строку символов, составленную из значений атрибу-
тов, указанных в качестве ее параметров. Эти значения берутся из сгруппированных
строк.
model
|
string_agg
---------------------+--------------------------------------------
Airbus A319-100
| Business (20), Economy (96)
Airbus A320-200
| Business (20), Economy (120)
Airbus A321-200
| Business (28), Economy (142)
Boeing 737-300
| Business (12), Economy (118)
Boeing 767-300
| Business (30), Economy (192)
Boeing 777-300
| Business (30), Comfort (48), Economy (324)
Bombardier CRJ-200 | Economy (50)
Cessna 208 Caravan | Economy (12)
Sukhoi SuperJet-100 | Business (12), Economy (85)
(9 строк)
В качестве еще одного примера использования подзапроса в предложении FROM ре-
шим такую задачу: получить перечень аэропортов в тех городах, в которых больше
одного аэропорта.
Достарыңызбен бөлісу: