SQL ACADEMY ответы и решения заданий (часть 2, задания 23-44)

SQL Academy (ответы и решения заданий 23-44)
ВКонтакте WhatsApp Pinterest Facebook Email
Задание 23. Найдите самый дорогой деликатес (delicacies) и выведите его стоимость.
SELECT g.good_name, p.unit_price FROM Goods AS g JOIN Payments AS p ON (g.good_id=p.good) JOIN GoodTypes AS gt ON (g.type=gt.good_type_id) WHERE p.unit_price = (SELECT MAX(p.unit_price) FROM Payments AS p JOIN Goods AS g ON (g.good_id=p.good) JOIN GoodTypes AS gt ON (g.type=gt.good_type_id) WHERE gt.good_type_name='delicacies');
Задание 24. Определить кто и сколько потратил в июне 2005.
SELECT member_name, SUM(amount*unit_price) AS costs FROM FamilyMembers AS fm JOIN Payments AS p ON fm.member_id=p.family_member WHERE MONTH(date) = 06 AND YEAR(date) = 2005 GROUP BY member_name;
Задание 25. Определить, какие товары имеются в таблице Goods, но не покупались в течение 2005 года
SELECT good_name FROM Goods WHERE good_id NOT IN (SELECT good FROM Payments WHERE YEAR(date) = 2005);
Задание 26. Определить группы товаров, которые не приобретались в 2005 году
SELECT good_type_name FROM GoodTypes WHERE good_type_id NOT IN ( SELECT good_type_id FROM GoodTypes JOIN Goods ON good_type_id=type JOIN Payments ON good_id=good WHERE YEAR(date)=2005);
Задание 27. Узнать, сколько потрачено на каждую из групп товаров в 2005 году. Вывести название группы и сумму
SELECT good_type_name, SUM(amount*unit_price) AS costs FROM GoodTypes JOIN Goods ON good_type_id=type JOIN Payments ON good_id=good WHERE YEAR(date)=2005 GROUP BY good_type_name;
Задание 28. Сколько рейсов совершили авиакомпании с Ростова (Rostov) в Москву (Moscow)?
SELECT COUNT(*) as count FROM Trip WHERE town_from='Rostov' AND town_to='Moscow';
Задание 29. Выведите имена пассажиров улетевших в Москву (Moscow) на самолете TU-134
SELECT DISTINCT name FROM Passenger JOIN Pass_in_trip ON Pass_in_trip.passenger=Passenger.id JOIN Trip ON Trip.id=Pass_in_trip.trip WHERE town_to='Moscow' AND plane='TU-134';
Задание 30. Выведите нагруженность (число пассажиров) каждого рейса (trip). Результат вывести в отсортированном виде по убыванию нагруженности.
SELECT trip, COUNT(Passenger) as count FROM Pass_in_trip GROUP BY trip ORDER BY count DESC;
Задание 31. Вывести всех членов семьи с фамилией Quincey.
SELECT * FROM FamilyMembers WHERE member_name LIKE '%Quincey';
Задание 32. Вывести средний возраст людей (в годах), хранящихся в базе данных. Результат округлите до целого в меньшую сторону.
SELECT FLOOR(AVG(YEAR(CURRENT_DATE) - YEAR(birthday))) AS age FROM FamilyMembers;
Задание 33. Найдите среднюю стоимость икры. В базе данных хранятся данные о покупках красной (red caviar) и черной икры (black caviar).
SELECT AVG(unit_price) AS cost FROM Payments WHERE good IN (SELECT good_id FROM Goods WHERE good_name LIKE '%caviar');
Задание 34. Сколько всего 10-ых классов
SELECT COUNT(name) AS count FROM Class WHERE name LIKE '10%';
Задание 35. Сколько различных кабинетов школы использовались 2.09.2019 в образовательных целях?
SELECT COUNT(classroom) AS count FROM Schedule WHERE date='2019-09-02';
Задание 36. Выведите информацию об обучающихся живущих на улице Пушкина (ul. Pushkina)?
SELECT * FROM Student WHERE address LIKE 'ul. Pushkina%';
Задание 37. Сколько лет самому молодому обучающемуся ?
SELECT MIN(TIMESTAMPDIFF(YEAR,birthday,CURRENT_DATE)) AS year FROM Student;
Задание 38. Сколько Анн (Anna) учится в школе?
SELECT COUNT(first_name) AS count FROM Student WHERE first_name='Anna';
Задание 39. Сколько обучающихся в 10 B классе ?
SELECT COUNT(student) AS count FROM Student_in_class JOIN Class ON Student_in_class.class=Class.id WHERE Class.name = '10 B';
Задание 40. Выведите название предметов, которые преподает Ромашкин П.П. (Romashkin P.P.) ?
SELECT name AS subjects FROM Subject JOIN Schedule ON Subject.id=Schedule.subject JOIN Teacher ON Schedule.teacher=Teacher.id WHERE Teacher.last_name='Romashkin' AND Teacher.first_name LIKE 'P%' AND Teacher.middle_name LIKE 'P%';
Задание 41. Во сколько начинается 4-ый учебный предмет по расписанию ?
SELECT start_pair FROM Timepair WHERE >Задание 42. Сколько времени обучающийся будет находиться в школе, учась со 2-го по 4-ый уч. предмет ?
SELECT DISTINCT TIMEDIFF( (SELECT end_pair FROM Timepair WHERE (SELECT start_pair FROM Timepair WHERE ) AS time FROM Timepair;
Задание 43. Выведите фамилии преподавателей, которые ведут физическую культуру (Physical Culture). Отсортируйте преподавателей по фамилии.
SELECT last_name FROM Teacher JOIN Schedule ON Teacher.id=Schedule.teacher JOIN Subject ON Schedule.subject=Subject.id WHERE Subject.name = 'Physical Culture' ORDER BY Teacher.last_name
Задание 44. Найдите максимальный возраст (колич. лет) среди обучающихся 10 классов ?
SELECT MAX(TIMESTAMPDIFF(YEAR,birthday,CURRENT_DATE)) as max_year FROM Student JOIN Student_in_class ON Student.id=Student_in_class.student JOIN Class ON Student_in_class.class=Class.id WHERE Class.name LIKE '10%';
SQL ACADEMY ответы и решения заданий (часть 1, задания 1-22)

SQL Academy (ответы и решения заданий 1-22)
ВКонтакте WhatsApp Pinterest Facebook Email
Ниже представлены наши варианты решения заданий из онлайн тренажера на сайте SQL ACADEMY (sql-academy.org). Ответы на 66 заданий представленные в онлайн тренажере разбиты на 3 части. Здесь, в первой части, представлены ответы на первые 22 задания.
Задание 1. Вывести имена всех когда-либо обслуживаемых пассажиров авиакомпаний.
SELECT name FROM Passenger;
Задание 2. Вывести названия всеx авиакомпаний.
SELECT name FROM Company;
Задание 3. Вывести все рейсы, совершенные из Москвы
SELECT * FROM Trip WHERE town_from = 'Moscow';
Задание 4. Вывести имена людей, которые заканчиваются на “man”
SELECT name FROM Passenger WHERE name LIKE '%man';
Задание 5. Вывести количество рейсов, совершенных на TU-134
SELECT COUNT(*) AS count FROM Trip WHERE plane = 'TU-134';
Задание 6. Какие компании совершали перелеты на Boeing
SELECT DISTINCT name FROM Company JOIN Trip ON Company.id=Trip.company WHERE plane = 'Boeing';
Задание 7. Вывести все названия самолётов, на которых можно улететь в Москву (Moscow)
SELECT DISTINCT plane FROM Trip WHERE town_to = 'Moscow';
Задание 8. В какие города можно улететь из Парижа (Paris) и сколько времени это займёт?
SELECT town_to, TIMEDIFF(time_in, time_out) AS flight_time FROM Trip WHERE town_from = 'Paris';
Задание 9. Какие компании организуют перелеты с Владивостока (Vladivostok)?
SELECT DISTINCT name FROM Company JOIN Trip ON Company.id=Trip.company WHERE town_from = 'Vladivostok';
Задание 10. Вывести вылеты, совершенные с 10 ч. по 14 ч. 1 января 1900 г.
SELECT * FROM Trip WHERE time_out BETWEEN '1900-01-01 10:00:00' AND '1900-01-01 14:00:00';
Задание 11. Вывести пассажиров с самым длинным именем
SELECT name FROM Passenger WHERE LENGTH(name) = (SELECT MAX(LENGTH(name)) FROM Passenger);
Задание 12. Вывести id и количество пассажиров для всех прошедших полётов
SELECT trip, COUNT(passenger) as count FROM Pass_in_trip GROUP BY trip;
Задание 13. Вывести имена людей, у которых есть полный тёзка среди пассажиров
SELECT name FROM Passenger GROUP BY name HAVING COUNT(name) > 1;
Задание 14. В какие города летал Bruce Willis?
SELECT DISTINCT town_to FROM Trip JOIN Pass_in_trip ON Trip.id=Pass_in_trip.trip JOIN Passenger ON Pass_in_trip.passenger=Passenger.id WHERE name = 'Bruce Willis';
Задание 15. Во сколько Стив Мартин (Steve Martin) прилетел в Лондон (London)?
SELECT time_in FROM Trip JOIN Pass_in_trip ON Trip.id=Pass_in_trip.trip JOIN Passenger ON Pass_in_trip.passenger=Passenger.id WHERE name='Steve Martin' AND town_to='London';
Задание 16. Вывести отсортированный по количеству перелетов (по убыванию) и имени (по возрастанию) список пассажиров, совершивших хотя бы 1 полет.
SELECT name, COUNT(*) AS count FROM Passenger JOIN Pass_in_trip ON Passenger.id=Pass_in_trip.passenger GROUP BY passenger HAVING COUNT(trip) > 0 ORDER BY COUNT(trip) DESC, name;
Задание 17. Определить, сколько потратил в 2005 году каждый из членов семьи
SELECT member_name, status, SUM(amount*unit_price) AS costs FROM FamilyMembers JOIN Payments ON FamilyMembers.member_id=Payments.family_member WHERE YEAR(date) = 2005 GROUP BY member_name, status;
Задание 18. Узнать, кто старше всех в семьe
SELECT member_name FROM FamilyMembers WHERE birthday = (SELECT MIN(birthday) FROM FamilyMembers);
Задание 19. Определить, кто из членов семьи покупал картошку (potato)
SELECT DISTINCT status FROM FamilyMembers JOIN Payments ON FamilyMembers.member_id=Payments.family_member JOIN Goods ON Payments.good=Goods.good_id WHERE good_name = 'potato';
Задание 20. Сколько и кто из семьи потратил на развлечения (entertainment). Вывести статус в семье, имя, сумму
SELECT fm.status, fm.member_name, SUM(p.amount*p.unit_price) AS costs FROM FamilyMembers AS fm JOIN Payments AS p ON fm.member_id=p.family_member JOIN Goods AS g ON p.good=g.good_id JOIN GoodTypes AS gt ON g.type=gt.good_type_id WHERE good_type_name = 'entertainment' GROUP BY fm.status, fm.member_name;
Задание 21. Определить товары, которые покупали более 1 раза
SELECT good_name FROM Goods JOIN Payments ON Goods.good_id=Payments.good GROUP BY good HAVING COUNT(good) > 1;
Задание 22. Найти имена всех матерей (mother)
SELECT member_name FROM FamilyMembers WHERE status = 'mother';
Отдых в ОАЭ ; перелет с Владивостока!

Чартерные перелеты с Владивостока в Арабские Эмираты уже на Новый год. Арабские Эмираты -это одно из загадочных и манящих государств! Сейчас появилась возможность у наших туристов (Дальневосточников) попасть в эту страну на отдых чартерным перелетом из Владивостока.
Первый самолет будет 26 декабря! Как раз на Новый и год. С возможностью пребывания 10 и 20 ночей!
КАКОЙ ЭМИРАТ ВЫБРАТЬ ДЛЯ ОТДЫХА. — на самом деле это можно понять только путем личного сравнения)))
Вы спросите — Но с чего то же надо начать? — КОНЕЧНО. Вот краткий обзор каждого из Эмиратов: АБУ-ДАБИ — прекрасный, цветущий, зеленый! Здесь проходят ежегодные этапы «Формула 1» Отличный отдых всей семьей, тк пляжи очень чистые и удобные для купания с самыми маленькими малышами (море+экскурсии+шоппинг+развления) ДУБАИ — самый известный Эмират из всех, — самая высокая плотность интересных туристических мест! Здесь есть все! Главное желание и возможности. Шарджа — это самый строгий Эмират из всех, здесь «сухой» закон. Все очень пристойно, вечера тихие и спокойные. Пляжи широкие и чистые. Но если вдруг наскучила тишина можно уехать в соседний Дубаи, ведь он всего в 20 минутах езды! Аджман — Эмират, где можно найти много музеев, историческую архитектуру, а так же тишину и умиротворение. Рас эль Хайма— Самый северный Эмират -климат мягкий, без изнуряющей жары. Он придется по вкусу любителям — дайвинга; сафари парки; прогулки в горы; горячие источники!! Фуджейра — Оманский залив, Индийский океан! — водопады; горячие источники; красивейшая природа; дайвинг! Ум Эль Кувейн — Самый скромный Эмират, Семейный, тихий отдых, что предлагает? — верховая езда; ночная охота на крабов; аквапарк, дельфинарий!
ВЫБОР ВСЕГДА ОСТАЕТСЯ ЗА ВАМИ, а мы предлагаем график полетов. 2019//2020 годы
стоимость с 1 человека при 2х местном размещении: НОВОГОДНИЙ ТУР! Вылет 26 декабря 2019 года ( 10 ночей и 20 ночей)
Абу Даби — отель 4* с завтраками 10 ночей от 84500 рублей; 20 ночей от 104000 рублей Дубаи — отель 4* с завтраками 10 ночей от 77800 рублей; 20 ночей от 130000 рублей
Аджман — отель 4* с завтраками 10 ночей от 82700 рублей; 20 ночей от 135800 рублей Рас Эль Хайна — отель 4* с завтраками 10 ночей от 69400 рублей; 20 ночей от 112100 рублей Фуджейра — отель 4* с завтраками 10 ночей от 66800 рублей; 20 ночей от 109505 рублей Шарджа — отель 4* с завтракми 10 ночей от 69500 рублей; 20 ночей от 115120 рублей ***Стоимость может меняться от курса доллара; точная стоимость на день бронирования и оплаты. СОСТАВ ПАКЕТА:
| 26.12.2019 — 26.12.2019 | Transfer: GROUP TRANSFER UAE apt -hotel |
| 26.12.2019 — 26.12.2019 | VLADIVOSTOK -> Dubai, Y |
| 26.12.2019 — 05.01.2020 | IBIS FUJAIRAH 3 ***, STANDARD ROOM — QUEEN BED/DBL, BB |
| 26.12.2019 — 05.01.2020 | : ERV UAE Medical Insurance 40000 USD 30 franchize |
| 05.01.2020 — 05.01.2020 | Transfer: GROUP TRANSFER UAE hotel-apt |
| 05.01.2020 — 05.01.2020 | Dubai -> VLADIVOSTOK, Y |
| 31.12.2019 — 31.12.2019 | N.Y. Holidays: NY GALA DINNER UAE (IBIS FUJAIRAH, BB) |
*** Можно заказать индивидуальный трансфер за дополнительную плату. ЯНВАРЬ, ДАТЫ ВЫЛЕТА: 6 января 2020 года
Остальные даты под запрос: 16; 27
ОТЕЛЬ 4* С ЗАВТРАКАМИ 10 НОЧЕЙ ОТ 62100 РУБЛЕЙ
ФЕВРАЛЬ, ДАТЫ ВЫЛЕТА: 6; 17; 27
ОТЕЛЬ 4* С ЗАВТРАКМИ 10 НОЧЕЙ ОТ 61710 РУБЛЕЙ МАРТ, ДАТЫ ВЫЛЕТА: 9;19;30
ОТЕЛЬ 4* С ЗАВТРАКАМИ 10 НОЧЕЙ ОТ 62100 РУБЛЕЙ АПРЕЛЬ, ДАТЫ ВЫЛЕТА: 9;20;30
ОТЕЛЬ 4* С ЗАВТРАКАМИ 10 НОЧЕЙ ОТ 60500 РУБЛЕЙ
Пассажирские чартеры премиум класса
Организуем чартерные пассажирские перевозки премиального класса в разные страны мира на самолетах разной вместительности. Клиентам доступна бизнес авиация, лайнеры известных во всем мире производителей, включая Airbus.
Накопленный опыт организации пассажирских авиаперелетов, сотрудничества с крупными российскими компаниями позволяет создавать максимально комфортные, безопасные условия для доставки пассажиров в разные страны мира.

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

Туристические чартерные авиаперелеты – это возможность беспрепятственно, безопасно путешествовать по миру с комфортом. Организуем авиатуры в соответствии с требованиями клиента, индивидуальной туристической программой. Гарантируем оперативность, комфорт, независимо от количества перелетов.
Рейсы VIP класса с повышенным уровнем комфорта позволяют быстро перемещаться по миру. Салон самолета отделан материалами премиального класса, оборудован всем необходимым для удовлетворения запросов, потребностей пассажира на 100%. Во время полета можно отдыхать, праздновать или работать. Интерьер продуман до мелочей, что гарантирует беспрецедентный уровень комфорта.
Свяжитесь с менеджером компании по телефону, через электронную почту или Skype для получения консультации, заказа чартерных пассажирских авиаперевозок.


Ознакомиться более подробно с условиями тарифов, а также получить любые консультации по Вашим вопросам, Вы можете
по телефонам:
у наших сотрудников:
Наталья E-mail: Skype: nataly0996
Ирина E-mail: Skype: i-pikalova