Выдержка из текста работы
[HAVING условие отбора группы] – для сгруппированной таблицы это условие для горизонтального отбора целых групп для помещения в результат, аналогично как WHERE задаёт условие отбора отдельных строк.
[INTO цель] – задает, куда и в какой форме поместить результирующую таблицу
S (Sno, Sname, Status, City)
1) Извлечь все сведения о всех поставщиках
SELECT * ~ SELECT S ~ SELECT Sno, Sname, Status, City
FROM S
2) Извлечь Sno, Sname поставщиков из Парижа;
Извлечь Sno, Sname поставщиков из Парижа, Лондона и Москвы;
SELECT Sno, Sname
FROM S
WHERE City=’Paris’
WHERE City=’Paris’ OR City=‘London’ OR City=‘Moscow’ (можно исп-ть AND, OR, NOT)
WHERE City in (‘Paris’, ‘London’, ‘Moscow’)
3)Вывести поставщиков со статусом >20 и <90
SELECT Sno, Sname Status
FROM S
WHERE Status >20 AND Status <90
WHERE Status BETWEEN 20 AND 90
4)Вывести сведения о поставщиках упорядоченные по значению статуса (по возрастанию), а для поставщиков с одинаковым статусом по имени в обратном алфавитном порядке
SELECT Sno, Sname Status
FROM S
ORDER BY Status ASC (по возрастанию)
Sname DESC (по убыванию)
5)Извлечь поставщиков у которых в названии города имеется буква ‘d’
SELECT Sno, Sname Status
FROM S
WHERE City LIKE %d%
6) Вывести сведения о поставщиках и их статусе, причём значение статуса должно быть поделено на 100.
SELECT Sno, Sname Status/100 AS PStatus
FROM S
7)Вывести список городов поставщиков: т.к. в одном городе может быть несколько поставщиков, то результат может создать дубликаты по числу поставщиков в этом городе. В SQL дубликаты подобного рода не устраняются.
SELECT DISTINCT City
FROM S
~ указание устранить дубликаты строк в рез-щей таблице
MIN (столбец) MAX(столбец) AVG(столбец)
COUNT (*) – подсчитать число строк в группе
COUNT (DISTINCT имя столбца) — подсчитать число строк с различными значениями указателя столбца.
Эти функции можно рассматривать без группирования, тогда вся таблица рассматривается как одна группа.
8) Подсчитать общее количество поставщиков
SELECT COUNT (*) AS кол-во поставщиков
FROM S
9) Вывести названия городов с указанием количества поставщиков в них
SELECT City COUNT (*) AS кол-во поставщиков
FROM S
GROUP BY City
10) Вывести сведения о городах с указанием числа различных уровней среднего статуса поставщиков из этого города
SELECT City COUNT (DISTINCT Status) AS кол-во поставщиков
FROM S
GROUP BY City
11) Вывести города с указанием минимального, максимального, среднего статуса поставщиков из этого города:
SELECT City MIN (Status) AS minSt MAX(Status) AS maxSt AVG(Status) AS avgSt
FROM S
GROUP BY City