Разработка представлений. Вывод об определенных сведениях работника определенного подразделения. Результаты представления

Страницы работы

12 страниц (Word-файл)

Содержание работы

МИНИСТЕРСТВО ТРАНСПОРТА РОССИЙСКОЙ ФЕДЕРАЦИИ

ГОСУДАРСТВЕННАЯ СЛУЖБА РЕЧНОГО ФЛОТА

НОВОСИБИРСКАЯ ГОСУДАРСТВЕННАЯ АКАДЕМИЯ

ВОДНОГО ТРАНСПОРТА

Электромеханический факультет

Дисциплина «основы SQL»

Лабораторная работа №3

Тема:Разработка представлений.

Группа ИТ-31 ″а″

Студент:

«__»___________2010 г.

_____________________

подпись

Студент: М.Г.

«__»___________2010 г.

_____________________

подпись

Студент:

«__»___________2010 г.

_____________________

подпись

Преподаватель:

«__»___________2010 г.

___________________

подпись

Новосибирск, 2010г.


Представления:

1) Вывод об определенных сведениях работника определенного подразделения.

create view one as select sotrudniki.id_sotrudnika,sotrudniki.familia, sotrudniki.imya, obrazovanie.nazvanie_uceb_zav, obrazovanie.specialnost,perevodi_po_otdelam.data_perevoda

from sotrudniki, obrazovanie,spisok_otdelov,perevodi_po_otdelam

where obrazovanie.id_sotrudnika=sotrudniki.id_sotrudnika

and perevodi_po_otdelam.id_sotrudnika=sotrudniki.id_sotrudnika

and spisok_otdelov.nazvanie='administraciya'

Рис.1-Таблица Сотрудники

Рис.2-Таблица Образование

Рис.3-ТаблицаПереводы по отделам

Рис.4-Таблица Список отделов

Рис.5-Сущность-Связь

Рис. 6- Результат представления №1

2) Сведения о работниках стаж работы, которых на фирме не менее  … лет.

create view two as SELECT sotrudniki.familia, sotrudniki.imya, sotrudniki.otchestvo, spisok_dolgnostei.nazvanie,min(naznachenie_na_dolgnost.data_naznachenia)

FROM spisok_dolgnostei,naznachenie_na_dolgnost

JOIN sotrudniki ON sotrudniki.id_sotrudnika=naznachenie_na_dolgnost.id_sotrudnika

WHERE (year(now())-year(naznachenie_na_dolgnost.data_naznachenia))<=20 group by sotrudniki.familia,sotrudniki.imya

Рис.7-Таблица Сотрудники

Рис.8-Таблица Список должностей

Рис.9-Таблица Назначение на должность

Рис.10–Результат представления №2

Рис.11- Сущность—Связь

3) Вывод сведений о сотрудниках находящихся в отпуске в определенный период

create view tree as select sotrudniki.id_sotrudnika,sotrudniki.familia, sotrudniki.imya from sotrudniki

join otpuska on sotrudniki.id_sotrudnika=otpuska.id_sotrudnika

where day(otpuska.data_uhoda)<=day(201011030)>=day(otpuska.data_vozvrata)

Рис.12-Таблица Сотрудники

Рис.13-Тааблица Отпуска

Рис14-Результат представления №3

Рис.15-Сущность-связь

4) Сведения о работниках, у которых в текущем году наступает пенсионный возраст

create view four as SELECT familia, imya from sotrudniki where

(year(now())-year(sotrudniki.data_rogdenia))=30

Рис.16-Таблица Сотрудники

Рис.17-Результат представления №4

Рис.18-Сущность-связь

5) Вывод сведений о сотрудниках, у которых стаж работы на данной должности не менее … лет.

create view five as SELECT sotrudniki.familia, sotrudniki.imya, sotrudniki.otchestvo, spisok_dolgnostei.nazvanie,max(naznachenie_na_dolgnost.data_naznachenia)

FROM spisok_dolgnostei,naznachenie_na_dolgnost

JOIN sotrudniki ON sotrudniki.id_sotrudnika=naznachenie_na_dolgnost.id_sotrudnika

WHERE (year(now())-year(naznachenie_na_dolgnost.data_naznachenia))<=20 group by sotrudniki.familia,sotrudniki.imya

Рис.19-Таблица Сотрудники

Рис.20-Таблица Список должностей

Рис.21-Таблица Назначение на должность

Рис.22-Результат представления № 5

Рис.23- Сущность—Связь

6) Сведения о долгах фирмы по заработной плате перед определенным сотрудником

create view six as select ((select sum(summa) from zarplata)-(select sum(summa) from viplati))

Рис.24-Таблица Зарплата

Рис.25-Таблицаа Выплаты

Рис.-26-Результат представления №6

Рис.27-Сущность-Связь

7) Сведения о детях сотрудниках достигших 18 лет.

create view seven as select sotrudniki.id_sotrudnika,sotrudniki.familia as s_familia, sotrudniki.imya as s_imya, deti.familia as d_familia, deti.imya as d_imya from sotrudniki

join deti on sotrudniki.id_sotrudnika=deti.id_sotrudnika

where (year(now())-year(deti.data_rogdenia))<18

Рис.28-Таблица Сотрудники

Рис.29- Таблица Дети

Рис.32 –Результат представления №7

Рис31-Сущность-Связь

8) Вывод сведений о перемещениях по должностям и отделам определенного сотрудника.

create view eight as SELECT sotrudniki.familia, sotrudniki.imya, sotrudniki.otchestvo, spisok_dolgnostei.nazvanie as nazvanie_dolgnosti,naznachenie_na_dolgnost.data_naznachenia,spisok_otdelov.nazvanie as nazvanie_otdela, perevodi_po_otdelam.data_perevoda

FROM naznachenie_na_dolgnost,sotrudniki,spisok_dolgnostei,spisok_otdelov,perevodi_po_otdelam

where sotrudniki.familia='Borozdin'

and sotrudniki.id_sotrudnika=naznachenie_na_dolgnost.id_sotrudnika

and sotrudniki.id_sotrudnika=perevodi_po_otdelam.id_sotrudnika

and spisok_otdelov.Id_otdela=perevodi_po_otdelam.id_otdela

and naznachenie_na_dolgnost.id_dolgnosti=spisok_dolgnostei.id_dolgnosti

Рис.32-Таблица Список отделов

Рис.33-Таблица Сотрудники

Рис.34-Таблица Список должностей

Рис.35-Таблица Назначение на должность

Рис.36-Таблица Переводи по отделам

Рис.37-Результат представления №8

9) Вывод сведений о сумме отчислений в пенсионный фонд за 6 месяцев

create view nine as SELECT sum(zarplata.summa)*0.14

from zarplata

where zarplata.period>=20101108

and zarplata.period<=20101111

Рис.38-Таблица Зарплата

Рис.39- Результат представления №9

Рис.40-Сущность-Связь

Похожие материалы

Информация о работе

Предмет:
Основы SQL
Тип:
Отчеты по лабораторным работам
Размер файла:
3 Mb
Скачали:
0