Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БД_зведене.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆
  1. Які є типи ключів для відношень часово-залежних даних?

Оскільки у метамоментній часовій реляційній моделі ми виділили декілька нових типів функціональних залежностей, то за аналогією будемо розрізняти такі типи ключів:

1. Традиційні ключі.

2. Локальні та сильні часові ключі.

Про традиційні ключі будемо говорити лише стосовно атрибутів ідентифікаторів об'єктів G.

Приклад 3.24. У ЧЗД-відношенні Оцінки з табл. 3.1 (див. приклад 3.1) атрибут Студент є традиційним ключем, оскільки виконується традиційна функціональна залежність Студент→(Студент, Група). Наявність такого ключа означає, що для ідентифікації кортежів ЧЗД-відношення Оцінки достатньо одного атрибута Студент, а не пари →(Студент, Група).

Локальні та сильні ключі стосуються атрибутів подій та часових атрибутів.

  1. Що таке нормальна форма відношення часово-залежних даних?

Нормальні форми характеризують “оптимальні” інформаційні схеми відношень, які не містять різні аномалії та надлишкові дані. Розроблено достатньо нормальних форм для реляційної моделі даних. Серед них класичними вважаються перша, друга, третя нормальні форми та нормальна форма Бойса-Кодда [18, 72]. Нормальні форми для темпоральних баз даних, зокрема, розглядалися у статті [186]. Однак специфікою будь-яких пропозицій щодо нормалізації є їхня жорстка прив'язаність до моделі даних. Тому нові підходи до визначення функціональних залежностей, розроблені у цій роботі, породжують нові визначення ключів та формулювання нормальних форм у метамоментній часовій реляційній моделі. Будемо розглядати інформаційну схему Â={R;P;S;Ω} та довільне інформаційне ЧЗД-відношення r зі схемою Â. Якщо інформаційна схема не перебуває в одній з часових нормальних форм (крім першої), то вона оптимізується за допомогою декомпозиції [18, 72]. Тобто інформаційна схема ділиться на декілька схем, кожна з яких перебуває у відповідній нормальній формі.

66. Яке призначення select-запитів в sql?

Цей запит традиційно використовується для:

  • Формування звітів на основі вибірок з умовами;

  • Формування аналітичних звітів на основі агрегованих даних;

  • Тиражування даних в розподілених середовищах і наповнення нових баз даних.

67. Яка структура select-запитів в sql?

SELECT список результуючих стовпчиків

FROM список таблиць-джерел даних

WHERE умова виводу стрічок;

Ключове слово SELECT означає запит на подання інформації. Вона буде подана у вигляді результуючої таблиці стрічки якої задовольнятимуть умові. Стовпчики, на основі яких формуються результуючі або перевіряється умова, повинні належати таблицям перерахованим у списку.

Якщо список результуючих стовпчиків співпадає із списком єдиної таблиці-джерела, то такий список зручно представляти у скороченому вигляді за допомогою зірочки - *.

Порядок результуючих стовпчиків може бути довільним

SELECT name, surname

FROM student;

68. Описати частини select-запитів в sql?

Усунення дублювання в виводі - DISTINCT

Для виключення із результату SELECT- запиту повторів використовується ключове слово DISTINCT (відмінний). Наприклад сформувати список міст можна наступним запитом

SELECT DISTINCT city

FROM student;

Логічні оператори AND, OR, NOT

В умові WHERE можна використовувати операції порівняння

= > >= < <= < >

та логічні операції

AND, OR, NOT.

Наприклад:

SELECT surname, name, city

FROM student

WHERE city= "Луцьк" AND birthday > '1990-12-25' ;

Оператор належності IN

Оператори IN (рівний довільному елементу із списку) і NOT IN (не рівний жодному елементу із списку) дозволяють ускладнювати умови відбору результуючих стрічок.

Наприклад, вибрати студентів окремих міст

SELECT *

FROM exam_marks

WHERE city IN ("Київ", "Львів");

або тих студентів, які не отримували ніколи деяких оцінок

SELECT *

FROM exam_marks

WHERE mark NOT IN (3, 5);

Оператор діапазону BETWEEN

Оператор BETWEEN дозволяє перевірити входження елемента в заданий інтервал із його межами включно

SELECT *

FROM subject

WHERE city BETWEEN "К" AND "М";

Оператор подібності LIKE

Пошук стрічкових значень по заданому зразку, який використовує символи: “_” – наявність, у вказаному місці одного довільного символу, •“%” - наявність, у вказаному місці довільної послідовності символів. Цей засіб часто використовують для вибору слів, що починаються на певну букву

SELECT *

FROM student

WHERE surname LIKE ”П%”;

Також ми можемо відбирати слова, деякі символи в яких пишуться неоднозначно, наприклад

SELECT *

FROM subject

WHERE subj_name LIKE ”Комп_ютер%”;

Оператор впорядкування ORDER BY

Оператор ORDER BY використовується для впорядкування стрічок результуючої таблиці за значеннями деякого стовпчику або стовпчиків. Можна також вказати вид впорядкування за зростанням (ASC) або за спаданням (DESC). Зростаюче впорядкування застосовується за замовчуванням, наприклад

SELECT *

FROM student

ORDER BY city;

Зворотнє впорядкування забезпечується наступним чином:

SELECT *

FROM student

ORDER BY city DESC;