- •Тема 5. Мова реляційних запитів sql.
- •Роль та історія розвитку sql.
- •Простий приклад
- •Історія
- •Стандарти
- •Питання сумісності
- •Переваги стандартів sql
- •1. Незалежність від конкретної субд
- •2. Наявність стандартів
- •3. Декларативність
- •Недоліки стандартів sql
- •1. Невідповідність реляційної моделі даних
- •Коротко про стандарт sql:2003
- •Cтворення таблиці
- •Видалення таблиці
- •Вираз select
- •Частина from
- •Частина where
- •Відповідність шаблону
- •Значення null
- •Частина order by
- •Приклад нотації для визначення оператора select в Oracle
- •Декартів добуток
- •Тета-з’єднання
- •Натуральне з’єднання
Декартів добуток
Декартів добуток (або крос-добуток) двох відношень R і S є безліч пар, які можуть бути утворені шляхом спарювання кожного кортежу з R з кожним кортежем S.
Результат – ввідношення зі схемою R та приєднаною до неї схемою S.
Атрибути перейменовуються для уникнення двозначності або до атрибуту додається префікс – назва відношення до якого воно відноситься:
RA
SQL SELECT * FROM R,S;
Тета-з’єднання
Тета-з’єднання двох відношень R і S є безліч пар декартового добутку R та S, що задовольняють деякій умові C.
RA
SQL SELECT * FROM R,S WHERE C;
Натуральне з’єднання
Натуральне з’єднання двох відношень R та S – це множина пар кортежів, одного з R та одного з S, які однакові в атрибутах, що є однаковими для схем R та S.
Схема результату включає об’єднання атрибутів R та S.
Нехай схеми будуть такі: R (A,B,C) та S(B,C,D)
RA
SQL SELECT R.A, R.B, R.C, S.D
FROM R,S
WHERE R.B = S.B AND R.C = S.C;
або
SQL SELECT *
FROM R NATURAL JOIN S;
Висячі кортежі – такі, які є в одному відношенні, але не має в іншому.
