Skip to content

pechenushkaaa/SQL-scripts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

Задание #1

  1. На основе предложенной предметной области (текста) составить ее описание. Из полученного описания выделить сущности, их атрибуты и связи.
  2. Составить инфологическую модель.
  3. Составить даталогическую модель. При описании типов данных для атрибутов должны использоваться типы из СУБД PostgreSQL.
  4. Реализовать даталогическую модель в PostgreSQL. При описании и реализации даталогической модели должны учитываться ограничения целостности, которые характерны для полученной предметной области.
  5. Заполнить созданные таблицы тестовыми данными.

Для создания объектов базы данных у каждого студента есть своя схема. Название схемы соответствует имени пользователя в базе studs (sXXXXXX). Команда для подключения к базе studs:

psql -h pg -d studs

Описание предметной области, по которой должна быть построена доменная модель:

Алистра решительно вошла в главный вестибюль Зала Совета - должным образом пораженная, но ничуть не подавленная глубочайшей тишиной, которая о6ъяла ее тотчас же, едва она переступила порог. Вдоль дальней стены вестибюля сплошной шеренгой стояли информационные машины, и она наудачу подошла к одной из них.

Задание #2

По варианту, выданному преподавателем, составить и выполнить запросы к базе данных "Учебный процесс".

Команда для подключения к базе данных ucheb:

psql -h pg -d ucheb

Составить запросы на языке SQL (пункты 1-7).

  1. Сделать запрос для получения атрибутов из указанных таблиц, применив фильтры по указанным условиям:
    Таблицы: Н_ОЦЕНКИ, Н_ВЕДОМОСТИ.
    Вывести атрибуты: Н_ОЦЕНКИ.КОД, Н_ВЕДОМОСТИ.ДАТА.
    Фильтры (AND):
    a) Н_ОЦЕНКИ.КОД = 2.
    b) Н_ВЕДОМОСТИ.ЧЛВК_ИД = 142390.
    Вид соединения: LEFT JOIN.
  2. Сделать запрос для получения атрибутов из указанных таблиц, применив фильтры по указанным условиям:
    Таблицы: Н_ЛЮДИ, Н_ВЕДОМОСТИ, Н_СЕССИЯ.
    Вывести атрибуты: Н_ЛЮДИ.ОТЧЕСТВО, Н_ВЕДОМОСТИ.ЧЛВК_ИД, Н_СЕССИЯ.УЧГОД.
    Фильтры (AND):
    a) Н_ЛЮДИ.ИМЯ = Владимир.
    b) Н_ВЕДОМОСТИ.ЧЛВК_ИД > 163249.
    c) Н_СЕССИЯ.ДАТА = 2002-01-04.
    Вид соединения: RIGHT JOIN.
  3. Вывести число фамилий без учета повторений.
    При составлении запроса нельзя использовать DISTINCT.
  4. Найти группы, в которых в 2011 году было ровно 5 обучающихся студентов на кафедре вычислительной техники.
    Для реализации использовать подзапрос.
  5. Выведите таблицу со средним возрастом студентов во всех группах (Группа, Средний возраст), где средний возраст больше минимального возраста в группе 1101.
  6. Получить список студентов, отчисленных до первого сентября 2012 года с очной или заочной формы обучения (специальность: Программная инженерия). В результат включить:
    номер группы;
    номер, фамилию, имя и отчество студента;
    номер пункта приказа;
    Для реализации использовать подзапрос с IN.
  7. Сформировать запрос для получения числа на ФКТИУ отличников.

About

Задания для работы с базой данных PostgreSQL

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published