Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсач.docx
Скачиваний:
78
Добавлен:
13.10.2022
Размер:
767.57 Кб
Скачать

Физическая модель базы данных

  1. Реализация базы данных

Структура таблиц баз данных

Таблица «должности»

Содержимое:

Таблица «клиенты»

Содержимое:

Таблица «заявки»

Содержимое:

Таблица «заявки-услуги»

Содержимое:

Таблица «Специализации»

Содержимое:

Таблица «сотрудники»

Содержимое:

Таблица «услуги»

Содержимое

Запросы

  1. Информация о должности и специализации

SELECT ст.ID_Сотрудника AS ID, ст.Фамилие AS Фамилие, сп.Наименование AS Специализация, д.Наименование AS Должность

FROM сотрудники ст

INNER JOIN специализации сп ON ( ст.ID_Специализация = сп.ID_Специализация)

INNER JOIN должность д ON ( ст.ID_Должность = д.ID_Должность )

ORDER BY ст.ID_Сотрудника

  1. Расчет стоимости услуг по заявке 1

SELECT к.ID_Клиента AS ID, к.Фамилия AS Фамилия, з.ID_Заявки AS `ID заявки` , SUM( у.цена ) AS Стоимость

FROM клиенты к

INNER JOIN заявки з ON ( з.ID_Клиента = к.ID_Клиента )

INNER JOIN `заявки-услуги` зу ON ( з.ID_Заявки = зу.ID_Заявки )

INNER JOIN услуги у ON ( зу.ID_Услуги = у.ID_Услуги )

WHERE з.ID_Заявки =1

  1. Количество оказанных услуг

SELECT зу.ID_Услуги as ID,count(*) as количество, у.Наименование as Наименование

FROM услуги у

Inner join `заявки-услуги` зу ON (у.ID_Услуги=зу.ID_Услуги)

Group by зу.ID_Услуги

  1. Телефонная книга

SELECT ID_Клиента AS ID, Телефон, Фамилия, Имя, 'Клиент' AS '--'

FROM клиенты

UNION

SELECT ID_Сотрудника AS ID, Телефон, Фамилие, Имя, 'Сотрудник'

FROM сотрудники

LIMIT 0 , 30

5. С использованием функции сортировки:

SELECT *

FROM Клиенты

ORDER BY Фамилия, Имя, Отчество ASC

LIMIT 0 , 30

6. С использованием функции возвращения кол-ва записей:

SELECT COUNT( `Id_Сотрудника` ) AS `Кол-во сотрудников`

FROM сотрудники

7. С использованием предиката нахождения в диапазоне в условии отбора:

SELECT *

FROM Услуги

WHERE Цена

BETWEEN 5000 AND 10000

LIMIT 0 , 30

8. С использованием предиката подобия:

SELECT Фамилия

FROM Клиенты

WHERE Фамилия

LIKE 'У%'

LIMIT 0 , 30

9. С использованием функции суммирования записей:

SELECT SUM( Цена ) AS `Общая стоимость` FROM Услуги

10. С использованием вычисляемого поля:

SELECT Цена /2 AS Цена FROM Услуги LIMIT 0 , 30

11.

SELECT MIN(Id_Услуги) AS min_услуга, MAX(Id_Услуги) AS max_услуга

FROM услуги

HAVING AVG(Id_Услуги) > 4

9.Заключение

Целью моего курсового проекта было создание базы данных «Юридическая консультационная фирма» согласно правилам проектирования и нормализации, используя знания, полученные на занятиях в течение семестра. Создание базы данных помогло мне закрепить свои навыки в проектировании и работе с базами данных, а также навыки работы с реляционной СУБД MySQL и языком программирования SQL. Я столкнулась со сложностями во время написания курсовой, решение которых дало мне новый опыт в проектировании баз данных.

Соседние файлы в предмете Базы данных