Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Декартово произведение наборов записей

Читайте также:
  1. VIII. Произведение искусства и художник
  2. В оперативной памяти находятся 10 переменных, содержащих числа, - S1, S2, ... S10. Программирование в среде Ассемблера. Сосчитать их произведение.
  3. Ведение записей
  4. Ведение записей беременной.
  5. Воспроизведение в EDIT
  6. Каждой записи в таблице А может соответствовать несколько записей в таблице В, а запись в таблице В не может иметь более одной соответствующей записи в таблице А.

Декартово произведение двух таблиц уже рассматривалось ранее: Напомню, что запрос:

SELECT списокСтолбцов FROM Tl, T2, ... Тn;

возвращает набор записей, полученный в результате декартового произведения наборов записей из таблиц Т1, Т2, ... , Tn. Таблицы, указанные в операторе from, могут быть как таблицами базы данных, так и виртуальными таблицами, возвращаемыми какими-нибудь запросами.

Иногда требуется получить декартово произведение таблицы самой на себя. В этом случае необходимо применить различные псевдонимы для этой таблицы, например:

SELECT списокСтолбцов FROM Mytab Tl, Mytab T2;

Обратите внимание, что попытка выполнить запрос:

SELECT списокСтолбцов FROM Mytab, Mytab;

приведет к ошибке.

В списке столбцов следует использовать полные имена столб­цов, используя псевдонимы таблиц, или символ (*), если требу­ется получить все столбцы.

Для декартова произведения в SQL также допустим синтаксис с ключевыми словами cross join (перекрестное соединение):

SELECT списокСтолбцов FROM Mytab Tl CROSS JOIN Mytab T2;

Рассмотренные выражения работают в полнофункциональных ба­зах данных. В Microsoft Access для получения декартового произ­ведения возможно использование выражения (SELECT список-столбцов FROM T1, T2, ... Tn), только если все таблицы в списке имеют различные имена. Если требуется декартово произведение таблицы самой на себя, то в выражении (SELECT список-столбцов FROM Mytab Tl, Mytab T2) Access автоматическидобавит ключевое слово as перед каждым псевдонимом. Попытка использования ключевых слов cross join в Access приведет к ошибке.

Запросы на декартово произведение сами по себе очень редко используются. Они приобретают некоторый смысл, если приме­няются с оператором where.

Допустим, что имеется таблица


Дата добавления: 2015-07-08; просмотров: 266 | Нарушение авторских прав


Читайте в этой же книге: Транзитивные зависимости | Правила вывода | Задачи к текущему материалу | Нормальная форма Бойса—Кодда (НФБК) с примером аномалий для 3 формы | ЯЗЫК SQL | FROM СТУДЕНТ | FROM СТУДЕНТ. ЗАПИСЬ | FROM ЗАПИСЬ В | SELECT СТУДЕНТ.Имя | Удаление данных |
<== предыдущая страница | следующая страница ==>
Уточнения запроса| FROM Рейсы Т1, Рейсы Т2

mybiblioteka.su - 2015-2021 год. (0.006 сек.)