|
Основы SQL. Основы sql основы sql план курса План курса
TRUNC ФУНКЦИЯ (ДЛЯ ДАТ) TRUNC ФУНКЦИЯ (ДЛЯ ДАТ) TRUNC (date, [ format ] ) Unit
| Действительные параметры формата
| Год
| YYYY, YEAR, SYEAR, YYY, YY, Y
| Квартал
| Q
| Месяц
| MONTH, MON, MM
| Неделя
| WW
| IW
| IW
| W
| W
| День
| DDD, DD
| День начала недели
| DAY, DY, D
| Час
| HH, HH12, HH24
| Минута
| MI
| Сейчас 01.09.2017 07:55:00, выберите ближайшие 5 рейсов из Санкт-Петербурга в Москву select t.* from (select f.date_departure , a.city , a_ar.city city_arrival from flights f join airports_data a_ar on a_ar.airport_code=f.arrival_airport where upper(a.city)='ST. PETERSBURG' and upper(a_ar.city)='MOSCOW' and f.date_departure > to_date('01.09.2017 07:55:00', 'dd.mm.yyyy hh24:mi:ss') order by f.date_departure) t where rownum<=5 Вывести 10 бронирований с самой высокой стоимостью select * from (select * from bookings order by total_amount desc) where rownum<10 aircraft_code ORDER BY aircraft_code GROUP BY aircraft_code 319 319 319 321= 321 = 321 733 321 733 321 733 К группам, полученным после применения GROUP BY, можно применить любую из стандартных агрегатных функций. - AVG() - функция возвращает среднее значение числового столбца.
- COUNT() - данная функция возвращает количество строк, которые соответствует определенным критериям.
- FIRST() - данная функция возвращает первое значение для выбранного столбца.
- LAST() - данная функция возвращает последнее значение для выбранного столбца.
- MAX() - функция возвращает наибольшее значение для выбранного столбца.
- MIN() - функция возвращает наименьшее значение для выбранного столбца.
- SUM() - функция возвращает сумму числового столбца.
Список самолетов и количество мест в них: select aircraft_code , count(*) from bookings.seats group by aircraft_code Список самолетов и количество мест в них с учетом класса места select aircraft_code , fare_conditions , count(*) from bookings.seats order by 1,2 , count(*) countFlight from lanit.flights t order by 1 Вывести количество рейсов в сентябре 2017г. по дням и аэропортам select a.airport_name , trunc(f.date_departure) , count(*) countairport from lanit.flights f , airports_data a where trunc(f.date_departure,'mm')='01.09.2017' and f.departure_airport=a.airport_code group by trunc(f.date_departure), a.airport_name order by 1,2 Предложение HAVING, используемое совместно с GROUP BY, позволяет исключить из результата группы, неудовлетворяющие условию (так же, как WHERE позволяет исключить строки). Получить кол-во мест в самолете по каждому типу, где мест больше 20 select aircraft_code , fare_conditions , count(*) from bookings.seats having count(*) >=20 order by 1,2 , count(*) countFlight from lanit.flights t having count(*)>500 order by 1 select a.city from airports_data a group by a.city having count(*) > 1 Вложенным запросом (подзапросом) называется запрос, содержащийся в предложении WHERE или HAVING другого оператора SQL. WHERE имя_поля1 = (SELECT имя_поля2 FROM имя_табл2 WHERE условие) Вложенный подзапрос возвращает несколько значений |
|
|