упного запису.
Проекція (projected_to - спроектований на) зменшує кількість стовпців в таблиці; дану операцію можна уявити собі як розрізання по вертикалі назва операції має своїм джерелом поняття проекції безлічі точок N-мірного простору в простір з меншою кількістю вимірів. Наприклад, в результаті проекції безлічі точок площини (Х, У) на вісь Х виходить безліч точок, розташованих на цій осі. На жаль, значення проекцій деяких точок можуть збігатися; це відбудеться в тому випадку, коли проекція видалить стовпець, що входить в ключ, так що залишилися частини двох укорочених кортежів можуть бути ідентичними. Тоді доведеться видалити дублікати і тим самим зменшити кількість рядків, тобто розмір БД. Якщо хоча б один з можливих ключів при виконанні проекції залишиться незачепленим, то дублікатів не буде.
Формально проекція записується наступним чином:
projected_to <ім'я-атрибуту> {, <ім'я-атрибуту>}
Де список <імен-атрибутів> означає імена зберігаються стовпців.
Операція проекції відповідає програмі відбору дещо іншого роду, ніж операція селекції, а саме, вона друкує певні поля з кожного запису. Видалення дублікатів зазвичай досягається в результаті сортування записів по необхідних полях, після чого записи пропускаються до тих пір, поки не зміниться значення поля. На практиці при одному перегляді файлу операція проекції зазвичай відбувається з операцією селекції.
Теоретико-множинне об'єднання (union) має два операнда; вона бере рядки двох таблиць і розміщує їх один за одним, формуючи одну довгу таблицю. Це можливо лише в тому випадку, коли обидві таблиці мають один і той же тип, тобто мають збіжні назви (імена) і типи стовпців. Такі таблиці називають сумісними з об'єднання. Всі дублікати рядків повинні бути видалені з відносини-результату. Дана операція аналогічна об'єднанню множин в алгебрі, але вона є додатковою по відношенню до обмеження, оскільки є можливість відновити ставлення шляхом об'єднання двох доповнюють один одного результатів операції селекції.
Операція теоретико-множинного відносини відповідає відомої операції злиття файлів. Якщо відомо, що файли не перетинаються, і якщо порядок записів не грає ролі, то достатньо скопіювати один файл наприкінці іншого. Однак, як правило, файли підтримуються в порядку первинних ключів, і тоді використовуються прості алгоритми злиття., Зчитувальні по черзі записи з кожного файлу залежно від того, в якому з файлів запис має ключ з меншим значенням полів, так що в новий файл запису також будуть міститися в порядку первинних ключів.
З'єднання (joined_to - з'єднання з) має два операнда; вона визначена для будь-яких двох таблиць. Якщо ці дві таблиці не мають стовпців з однаковими іменами, то з'єднання поводиться, як декартовій твір, поєднуючи кожен рядок першої таблиці по черзі з кожним рядком другої таблиці. Якщо імена всіх стовпців цих двох таблиць збігаються, то з'єднання поводиться як теоретико-множинне перетин, і створює таблицю, що складається з тих рядків, які зустрічаються в кожній з розглянутих двох таблиць (така таблиця може бути і порожньою, аналогічно порожній множині). Якщо у двох таблиць-операндів збігаються лише деякі імена стовпців, то в результаті з'єднання виходить таблиця, яка містить всі імена стовпців першої таблиці, а...