Выполните ниже приведенные запросы.

РАБОТА С БАЗОЙ ДАННЫХ СРЕДСТВАМИ SQL

 

ЦЕЛЬ РАБОТЫ

 

Изучить команду языка SQL SELECT. Научится писать простые запросы, запросы над одной и более таблицами, запросы с групповыми функциями, подзапросы.

 

ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ

 

1. Запустить утилиту SQL*PLUS («Пуск» – «Выполнить » – «sqlplus»). Ввести имя scott или scott2 (на разных машинах когут бать созданы разные пользователи) (если у Вас есть доступ к удаленному серверу /ауд. 166, 165-6?/, то введите имя пользователя scott@xe) , пароль везде tiger

2. Просмотрите структуру таблиц EMP, DЕРT с помощью команды DESC (DESCRIBE) (например, DESC emp). Вам будет удобнее дальше работать, если Вы срисуете себе схему лабораторной базы данных. Структуру таблиц смотри на рисунках 1.1 и 1.2.

 

Обратите внимание, что по этой и 5-й лабораторной работать делать и печатать отчеты ОБЯЗАТЕЛЬНО! Защита лабы проводится по отчету и дополнительным заданиям на написание аналогичных запросов.

В отчет необходимо включить само задание на запрос, команду SQL и результат запроса. Для этого рекомендуется использовать электронную версию методички и вставлять запросы и их результаты сразу после текста задания в методичку. Дальше эта методичка легко может быть переделана в отчет.

Обратите внимание, что методичка слегка непривычна для редактирования и копирования информации. Все перемещения по запросу для редактирования необходимо осуществлять с помощью клавишей «стрелочки». Пользуйтесь стрелочками «вверх» и «вниз» для доступа к истории ранее выполненных команд, которые потом можно повторно выполнить или отредактировать и выполнить в исправленном варианте. Для копирования и вставки информации воспользуйтесь командами основного меню утилиты «Изменить/Вставить и Копировать».

Синтаксические ошибки утилита сопровождает сообщениями (читайте их) и помечает знаком «*» то место, где найдена синтаксическая ошибка.

 

Выполните ниже приведенные запросы.

 

1. Выберите всю информацию из таблицы DЕРT (отделы).

2. Выберите всю информацию из таблицы ЕМР (сотрудники). Если информация выводится в сложночитаемом виде, перенастройте утилиту. Выберите Options\Envirement и смените для параметра Linesize значение по умолчание (80) на длину 200 или выполните команду SET LINESIZE 200. Возможно придется изменить и другие параметры настройки утилиты, такие как ширина буфера, включить возможность выделения информации мышью и т.п.

 

 

Рисунок 1.1 – Структура таблицы DEPT

 

 

Рисунок 1.2 – Структура таблицы EMP

 

3. Вывести информацию о служащем, который не имеет над собой начальника.

4. Определить служащих, зачисленных на работу между двумя задаваемыми датами.

5. Вывести номера, имена, должности и зарплаты служащих, которые в качестве продавца получают больше 1500 или в качестве клерка – больше 1000.

6. Вывести информацию об отделах в виде фраз: «Отдел DNAME номер DEPTNO расположен в городе LOC».

7. Выдайте имена всех служащих и их годовой доход (годовая зарплата плюс премия (на базе комиссионных)), используйте заменитель имен столбцов.

8. Определите последнюю дату зачисления сотрудников на работу.

9. Определите, сколько должностей существует в компании.

10. Выдайте имена и зарплату служащих, работающих в Чикаго. Отсортируйте результат по убыванию зарплаты.

11. По каждой дате посчитайте количество сотрудников, зачисленных в этот день на работу.

12. Найдите должности и их средние зарплаты, вывести только те должности, средняя зарплата которых превышает 1800.

13. По городам посчитайте количество служащих работающих в компании, и выдайте только те строки, где количество не больше 4.

14. Выдайте пары имен служащих с их номерами, которые работают в одном отделе на одинаковых должностях, указав номер отдела и должность. Формат вывода результата: номер отдела, должность, номер сотрудника №1, имя сотрудника № 1, номер сотрудника № 2, имя сотрудника № 2.

15. Выведите всю информацию об отделе, в котором нет служащих.

16. Найти служащих, получающих меньше всех в кампании.

17. Найти служащих, получающих больше всех по своей должности. Упорядочить по убыванию значений зарплаты.

18. Найти отдел, суммарная выплата зарплаты по которому максимальна в формате: отдел, суммарная зарплата.

19. Получить статистику о количестве сотрудников по отделам и по городам в следующем виде:

Type Place Count_emp
Отдел Название отдела Кол-во сотрудников
…или ….или
Город Название города Кол-во сотрудников

 

Самостоятельность выполнения запросов будет учитываться при выставлении оценки. Поэтому в конце лабораторной работы студенты обязаны продемонстрировать преподавателю то количество запросов, которое было сделано во время лабораторной работы. Остальные запросы доделываются дома или на следующей работе и также включаются в отчет.

 

СОДЕРЖАНИЕ ОТЧЕТА

 

1. Цель работы.

2. Условия и тексты команд по каждому пункту задания.

3. Результаты выполнения запроса (при отработке на лабораторной работе можно не печатать).

4. Выводы.

5. При сдаче отчета преподавателю необходимо защитить работу путем индивидуального (а не бригадного) написания 2-3 запросов.