реляційна алгебра

Реляційна алгебра - формальна система маніпулювання відносинами в реляційної моделі даних. [1]

Операція вибірки - унарний оператор, що записується як σaθb (R) або σaθv (R), де:

  • a, b - імена атрибутів
  • θ - оператор порівняння з безлічі
  • v - константа
  • R - відношення (в оригіналі - relation, проте як видно з прикладу, мається на увазі не тільки взаємозв'язок таблиць, скільки взаємозв'язок / співвідношення різних фактів в рядах цих таблиць).

Вибірка σaθb (R) (або σaθv (R)) вибирає все набори значень R, для яких функція a θ b (або a θ v) буде істинною.

Нехай дано такі співвідношення:


Примітно, що в SQL для повної відповідності операції проекції необхідно вказувати ключове слово DISTINCT. оскільки без нього рядок з віком 34 і вагою 80 відобразиться двічі, що відрізняється від результату реляційної операції проекції 1.

Результатом об'єднання відносин A і B буде ставлення з тим же заголовком, що і у сумісних по типу відносин A і B, і тілом, що складається з кортежів, що належать або A, або B, або обом відносинам.

Нехай дано такі співвідношення:

Результатом перетину відносин A і B буде ставлення з тим же заголовком, що і у відносин A і B, і тілом, що складається з кортежів, що належать одночасно обом відносинам A і B.

Нехай дано такі співвідношення:


Ключове слово INTERSECT може бути відсутнім в деяких СУБД, проте вона була придбана в стандарт [5].

Результатом різниці відносин A і B буде ставлення з тим же заголовком, що і у сумісних по типу відносин A і B, і тілом, що складається з кортежів, що належать відношенню A і не належать відношенню B.

Нехай дано такі співвідношення:

При виконанні прямого твори двох відносин здійснюється ставлення, кортежі якого є конкатенації (зчепленням) кортежів першого і другого операндів.

Нехай дано такі співвідношення:

Реляционное розподіл досить нетривіально описати, але на прикладі його сенс наочний. В цілому, з таблиці A беруться значення рядків, для яких присутні всі комбінації значень з таблиці B. Зрозуміло? Ну, приблизно про це я і намагався сказати, дивимося приклад:

Нехай дано такі співвідношення:

Тоді при розподілі на таблицю каналів:

Family Guy і The Simpsons - мультфільми, які показувалися і на RenTV і на 2x2 (умова в другій таблиці). При цьому Duck Tales не показувалася по RenTV, тому був виключений з результуючої таблиці.

Еквівалентний SQL-запит привести важко

Операція з'єднання є результат послідовного застосування операцій декартового твори і вибірки. Якщо у відносинах і є атрибути з однаковими найменуваннями, то перед виконанням з'єднання такі атрибути необхідно перейменувати. [4]

З'єднаємо їх з вибіркою σНазваніе_канала = Код_канала (Твір)
Перший етап, твір:

Другий етап, вибірка σНазваніе_канала = Код_канала (Твір):

1. Втім нічого дивного в цьому немає, Едгар Кодд звинувачував SQL в неправильній реалізації теорії. (Джерело)

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License

Other interesting sites

데브 레첸 의대생 들을 위한 오리엔테이션

Welcome to Hidden Project Wiki

Click here to edit contents of this page.

Click here to toggle editing of individual sections of the page (if possible). Watch headings for an "edit" link when available.

Append content without editing the whole page source.

Check out how this page has evolved in the past.

If you want to discuss contents of this page - this is the easiest way to do it.

View and manage file attachments for this page.

A few useful tools to manage this Site.

See pages that link to and include this page.

Change the name (also URL address, possibly the category) of the page.

View wiki source for this page without editing.

View / set parent page (used for creating breadcrumbs and structured layout).

Notify administrators if there is objectionable content in this page.

Something does not work as expected? Find out what you can do.

General Wikidot.com documentation and help section.

Wikidot.com Terms of Service - what you can, what you should not etc.

Wikidot.com Privacy Policy.