Вариант 1 2 Номера всех автобусов марки Икарус вывести в лексикографическом порядке SELECT bus_number FROM buses WHERE cod_model IN (SELECT cod_mo

Вариант 1
2 Номера всех автобусов марки Икарус, вывести в лексикографическом порядке
SELECT bus_number FROM buses WHERE cod_model IN (SELECT cod_model FROM models WHERE name_model=’Икарус’) ORDER BY bus_number ASC
6 Названия всех пунктов, которые начинаются с буквы Ч, вывести в алфавитном порядке
SELECT name_point FROM points WHERE name_point LIKE ‘Ч%’ ORDER BY name_point ASC
11 Названия и коды всех маршрутов, которые проходят через Шексну, в алфавитном порядке
SELECT name_route, cod_route FROM routes WHERE cod_route= (SELECT cod_route FROM points_routes WHERE cod_point = (SELECT cod_point FROM points WHERE name_point=’ Шексну’) )
16 Количество автобусов 1 класса
SELECT COUNT(*) FROM models WHERE class = ‘1’
21 Количество пунктов, расстояние до которых не более 20 км
SELECT COUNT(*) FROM points WHERE distance <= 20
26 Общее количество рейсов в понедельник между 9 и 10 часами (рейсы в 10 часов 0 минут не включаются)
SELECT COUNT(*) FROM trips WHERE week_day=1 AND hour=9
31 Цена самого дешевого билета
SELECT price* (SELECT MIN(distance) FROM points) AS ticket_price FROM km_prices
36 Самое позднее время отправления за всю неделю (часы и минуты отдельно)
SELECT MAX(hour), minute FROM trips WHERE minute=MAX(minute)
41 Название маршрута, по которому отправляется самый перввый рейс в понедельник (их может быть несколько)
SELECT name_route FROM routes WHERE cod_route= (SELECT cod_route FROM trips WHERE week_day=1 AND hour=MIN(hour) AND minute=MIN(minute))
46 Вывести названия пунктов, до которых самые дешевые билеты
SELECT name_point FROM points WHERE MIN( distance * (SELECT price FROM km_prices WHERE class = (SELECT class FROM models WHERE cod_model = (SELECT cod_model FROM buses WHERE cod_bus = (SELECT cod_bus FROM trips WHERE cod_route= (SELECT cod_route FROM points_routes WHERE points_routes.cod_point=points.cod_point) ) ) ) ) )
51 Названия всех марок автобусов и общее количество рейсов, в которых задействованы автобусы каждой марки
SELECT name_model, (SELECT COUNT(*) FROM trips WHERE cod_bus=(SELECT cod_bus FROM buses WHERE buses.cod_model = models.cod_model ) FROM models
56 Названия всех маршрутов с указанием количества рейсов по каждому маршруту
SELECT name_route, (SELECT COUNT(*) FROM trips WHERE trips.cod_route=routes.cod_route) FROM routes
61 Названия пунктов, которые принимают наибольшее количество рейсов в выходные дни (в предположении, что в какой день автобус выехал, в такой он и приедет)
SELECT name_point FROM points WHERE cod_point= (SELECT cod_point FROM points_routes WHERE cod_route=(SELECT MAX(COUNT(cod_route)) FROM trips WHERE week_day=6 OR week_day=7) )
66 Марки автобусов, которые ходят в наиболее удаленные пункты
SELECT name_model FROM models WHERE cod_model=(SELECT cod_model FROM buses WHERE cod_bus= (SELECT cod_bus FROM trips WHERE cod_route= (SELECT cod_route FROM points_routes WHERE cod_point = (SELECT cod_point FROM points WHERE distance=(SELECT MAX(distance) FROM points )) ) ) )

Вариант 2 Задачи
1 Требуется найти названия всех пунктов, расстояние до которых не более 20 км. Названия выведите в алфавитном порядке.
SELECT name_point FROM points WHERE distance <= 20 ORDER BY name_point ASC
5 Время отправления всех рейсов по маршруту Вологда-Череповец в понедельник по возрастанию
SELECT hour, minute FROM trips WHERE week_day=1 AND cod_route= (SELECT cod_route from routes WHERE name_route=’ Вологда-Череповец’) ORDER BY hour,minute ASC
10 Коды рейсов с указанием названий маршрутов и времени отправления в воскресенье до 12 часов, в порядке возрастания времени
SELECT cod_trip, (SELECT name_route FROM routes WHERE routes.cod_route=trips.cod_route ), hour, minute FROM trips WHERE week_day=7 AND hour<12
15 Количество автобусов марки Икарус
SELECT COUNT(*) FROM models WHERE name_model=’Икарус’
20 Общее количество рейсов в неделю по маршруту Вологда-Череповец
SELECT COUNT(*) FROM trips WHERE cod_route= (SELECT cod_route FROM routes WHERE name_route=’ Вологда-Череповец’)
25 Количество рейсов в понедельник по маршруту Вологда-Череповец
SELECT COUNT(*) FROM trips WHERE week_day=1 AND cod_route= (SELECT cod_route FROM routes WHERE name_route=’ Вологда-Череповец’)
30 Расстояние до самого удаленного пункта, до которого можно доехать каким-нибудь рейсом
SELECT MAX(distance) FROM points WHERE cod_point=(SELECT cod_point FROM points_routes WHERE cod_route= (SELECT cod_route FROM trips ) )
35 Самое раннее время отправления за всю неделю (часы и минуты отдельно)
SELECT MIN(hour), MIN(minute) FROM trips
40 Названия самых удаленных пунктов — их может быть несколько
SELECT name_point FROM points WHERE distance= (SELECT MAX(distance) FROM points)
45 Код самого позднего рейса в понедельник с указанием времени отправления и названия маршрута (возможно таких рейсов несколько — выбрать все)
SELECT cod_trip, hour, minute, (SELECT name_route FROM routes WHERE routes.cod_route=trips.cod_route) WHERE week_day=1 AND hour=(SELECT MAX(hour) FROM trips) AND minute=(SELECT MAX(minute) FROM trips)
50 Названия всех населенных пунктов и общее количество рейсов, которыми можно добраться до этого пункта
SELECT name_point, (SELECT COUNT(*) FROM trips WHERE trips.cod_route=(SELECT cod_route FROM points_routes WHERE points_routes.cod_point=points.cod_point ) ) FROM points
55 Названия всех населенных пунктов и количество различных автобусов, которые задействованы в рейсах, проходящих через каждый из населенных пунктов
SELECT name_point, (SELECT COUNT(DISTINCT cod_bus) FROM trips WHERE cod_route= (SELECT cod_route FROM points_routes WHERE points_routes.cod_point=points.cod_point) ) FROM points
60 Названия пунктов, которые принимают наибольшее количество рейсов в неделю
SELECT name_point FROM points WHERE cod_point= (SELECT cod_point FROM points_routes WHERE cod_route= (SELECT MAX(COUNT(cod_route)) FROM trips) )
65 Номера автобусов, которые ходят в наиболее удаленные пункты
SELECT bus_number FROM buses WHERE cod_bus= (SELECT cod_bus FROM trips WHERE cod_route= (SELECT cod_route FROM points_routes WHERE cod_point = (SELECT cod_point FROM points WHERE distance=(SELECT MAX(distance) FROM points )) ) ) )

(Вариант 3 задачи
1 Требуется найти названия всех пунктов, расстояние до которых не более 20 км. Названия выведите в алфавитном порядке.
SELECT name_point FROM points WHERE distance <= 20 ORDER BY name_point ASC
9 Номера всех автобусов, которые задействованы в выходные дни (суббота и воскресенье) в лексикографическом порядке
SELECT bus_number FROM buses WHERE cod_bus = (SELECT cod_bus FROM trips WHERE week_day=6 OR week_day=7) ORDER BY bus_numder ASC
14 Максимальная цена билета на рейс с номером 2
SELECT MAX(price) WHERE class=(SELECT class FROM models WHERE cob_model= (SELECT cod_model FROM buses WHERE cod_bus=2) )
19 Общее количество рейсов в понедельник
SELECT COUNT(*) FROM trip WHERE week_day=1
24 Количество пунктов, в названии которых есть хотя бы одна буква О (без учета регистра)
SELECT COUNT(*) FROM points WHERE name_point LIKE ‘%O%’
29 Количество рейсов, которые проходят через Сокол в понедельник
SELECT COUNT(*) FROM trips WHERE week_day=1 AND cod_route = (SELECT cod_route from routes_points WHERE cod_point = (SELECT cod_point FROM points WHERE name_point=’Сокол’ ) )
34 Самое большое количество остановок в маршруте
SELECT MAX(COUNT(cod_point)) FROM points_routes
39 Цена билета до самого удаленного пункта в автобусе первого класса (без учета того, ходят ли туда на самом деле автобусы первого класса)
SELECT price*(SELECT MAX(distance) FROM points) WHERE class=1
44 Код самого раннего рейса в понедельник с указанием времени отправления и названия маршрута (возможно таких рейсов несколько — выбрать все)
SELECT cod_route, hour, minute, (SELECT name_route FROM routes WHERE routes.cod_route=trips.cod_route) FROM trips WHERE week_day=1 AND hour = MIN(SELECT hour from trips) AND minute=MIN(SELECT minute FROM trips)
49 Самый ранний рейс в понедельник, проходящий через Сокол. Вывести часы, минуты, название маршрута и количество сободных мест. Если таких рейсов не один, выбрать все.
SELECT hour, minute, (SELECT name_route FROM routes WHERE routes.cod_route= trips.cod_route), ((SELECT places FROM models WHERE cod_model= (SELECT cod_model FROM buses WHERE buses.cod_bus=trips.cod_bus) ) – tickets) FROM trips WHERE week_day=1 AND cod_route = (SELECT cod_route FROM routes_points WHERE cod_point = (SELECT cod_point FROM points WHERE name_point=’Сокол’ ) ) AND hour = MIN(SELECT hour from trips) AND minute=MIN(SELECT minute FROM trips)
54 Названия всех населенных пунктов и количество маршрутов, которые проходят через каждый пункт
SELECT name_point, (SELECT COUNT(*) FROM routes WHERE cod_route=(SELECT cod_route FROM points_routes WHERE points_routes.cod_point=points.cod_point)) FROM points
59 Номера всех автобусов с указанием количества маршрутов, в которых задействован каждый из автобусов
SELECT bus_number, (SELECT COUNT(*) FROM trips WHERE trips.cod_bus=buses.cod_bus) FROM buses
64 Номера автобусов, которые задействованы в наибольшем общем количестве рейсов
SELECT bus_number FROM buses WHERE cod_bus=(SELECT MAX(COUNT(cod_bus) FROM trips ))
65 Номера автобусов, которые ходят в наиболее удаленные пункты
SELECT bus_number FROM buses WHERE cod_bus= (SELECT cod_bus FROM trips WHERE cod_route= (SELECT cod_route FROM points_routes WHERE cod_point = (SELECT cod_point FROM points WHERE distance=(SELECT MAX(distance) FROM points )) ) ) )

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

17 + 18 =

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

Adblock detector