Выполнение запроса по одной таблице БД, например: выдать названия всех городов России (исключая дубликаты)
В верхней области окна необходимо ввести:
select distinct nazvanie_goroda from vuz_gorod where cod_stran='01' [F5]
где '01' - это код России.
В результате выполнения этого запроса в нижней области окна появится отчет, представляющий собой список названий городов России (одно название города в одной строчке). Для просмотра отчета по запросу необходимо пользоваться мышкой и полосами прокрутки.
Замечание: Если в команде будет допущена ошибка, то вместо отчета будет выдано окно с сообщением об ошибке (см. рис.5).
2) Выполнение запроса по одной таблице БД с использованием функции BETWEEN,например:
выдать фамилии всех студентов и студентов-заочников России.
В верхней области окна необходимо ввести:
Рис. 5
select fio from poss where kat_obuch_k between '03' and '04' [F5]
где '03' и '04' - это коды, соответствующие категориям обучения "студент" и "студент-заочник".
Отчет представлен в нижней части окна (см. рис. 6).
3) Выполнение запроса по одной таблице БД с использованием функции IN,например:
выдать данные по учащимся России, закончившим учебу в 95, 97, 98 годах.
В верхней области окна необходимо ввести:
select * from poss where gok in ('95', '97', '98') [F5].
Отчет будет представлен в нижней части окна (см. рис. 7).
4) Выполнение запроса по одной таблице БД с использованием функции LIKE, например:
выдать сведения по учащимся России с фамилией КУТЕПОВ (А).
В верхней области окна необходимо ввести:
select * from poss where fio like '%КУТЕПОВ%' [F5]
Отчет будет представлен в нижней части окна (см. рис. 8).
5) Выполнение запроса по одной таблице БД с использованием функции NULL, например:
выдать данные по учащимся России, у которых отсутствует учетный номер.
Рис. 6
Рис. 7
Рис. 8
В верхней области окна необходимо ввести:
select * from poss where nomer is null [F5]
Отчет будет представлен в нижней части окна (см. рис. 9).
Замечание: Функции BETWEEN, IN, LIKE, NULL могут использоваться с операцией NOT.
Рис. 9
6) Выполнение запроса по одной таблице БД с использованием сложного условия,например:
выдать данные по учащимся России, принятым на учебу в 87 и 93 годах, за исключением специальности 0101 (математика).
В верхней области окна необходимо ввести:
select * from poss where (gp='87' or gp='93') and not spec='000101' [F5]
Отчет будет представлен в нижней части окна (см. рис. 10).
Рис. 10
7) Выполнение запроса по одной таблице БД с сортировкой записей,например:
выдать коды и названия всех учебных заведений Белоруссии, отсортировав записи по возрастанию кодов.
В верхней области окна необходимо ввести:
select cod_vuza, nazvanie_vuza from vuz_gorod where cod_stran='03' order by cod_vuza [F5]
Отчет будет представлен в нижней части окна (см. рис. 11).
Замечание: Во фразе order by вместо имени поля (cod_vuza) можно использовать порядковый номер позиции этого поля в списке выборки (для cod_vuza этот номер равен 1), т.е. можно указать order by 1. Другими словами, запрос будет выглядеть так:
select cod_vuza, nazvanie_vuza
from vuz_gorod
where cod_stran='03' order by 1
Рис. 11
8) Выполнение запроса и выдача количества записей по одной таблице БД с использованием функции COUNT(*),например:
выдать количество учебных заведений России.
В верхней области окна необходимо ввести:
select count(*) from vuz_gorod where cod_stran='01' [F5]
Отчет будет представлен в нижней части окна (см. рис. 12).
Замечание: Для использования агрегатных функций AVG и SUM необходимо в структуре таблицы иметь поля числового типа, например: количество учащихся. Агрегатные функции count, min, max могут быть применены к полям любого типа.
9) Выполнение запроса по одной таблице БД с группировкой записей,например:
выдать названия городов и учебных заведений России, сгруппировав записи по городам и учебным заведениям.
В верхней области окна необходимо ввести:
Рис. 12
select nazvanie_goroda, nazvanie_vuza from vuz_gorod where cod_stran='01' group by nazvanie_goroda, nazvanie_vuza [F5]
Отчет будет представлен в нижней части окна (см. рис. 13). Помимо отображения результатов выполнения запроса в табличном виде SQL Query Analyser позволяет просматривать графическое отображение процесса выполнения запроса (см. рис. 14). Чтобы его увидеть, необходимо выбрать пункт меню “Query”, а затем “Show Execution Plan” или нажать Ctrl+K.
Рис. 13
Рис. 14
10) Выполнение запроса по одной таблице БД с использованием фразы HAVING,например:
выдать учетные номера учащихся, встречающиеся больше одного раза.
В верхней области окна необходимо ввести:
select nomer from poss group by nomer having count(*)>1 [F5]
Отчет будет представлен в нижней части окна (см. рис. 15).
Упражнения на использование операторов update, insert и delete.