Студопедия

Главная страница Случайная страница

Разделы сайта

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






Ключевое слово INNER






Этот тип связи используется по умолчанию. Указание сочетания INNER JOIN равносильно указанию только ключевого слова JOIN. В качестве кандидатов на включение в результат запроса рассматриваются пары строк, удовлетворяющие критерию связывания в обеих таблицах. Затем строки из левой таблицы, для которых не имеется пары в связанной таблице, в результат не включаются. Также не включаются в результат и строки правой таблицы, для которых нет соответствующей строки в левой таблице.

В приведенном ниже примере выполняется выборка данных из таблиц «Дисциплины» и «Учебный_ план» с помощью запроса SELECT. Таблицы связаны по ключевому полю ID_ Д исциплина, имеющемуся в каждой из них. Для каждой строки таблицы «Учебный_ план» ищется строка с совпадающим значением поля ID_ Д исциплина в таблице «Дисциплины». Все строки таблицы «Учебный_ план», для которых нет строк с соответствующим значением поля ID_ Дисциплина, игнорируются и не включаются в конечный результат. Аналогично не включаются в результат все строки таблицы «Дисциплины», для которых нет соответствующей строки в таблице «Учебный план» (что, однако, невозможно для данного примера, так как столбец ID_ Дисциплина таблицы «Учебный_ план» связан внешним ключом со столбцом ID_ Дисциплина таблицы «Дисциплины»).

 

SELECT Наименование, Семестр, Количество_ часов

FROM Учебный_ план INNER JOIN Дисциплины ON

Учебный_ план. ID_ Дисциплина Дисциплины. ID_ Дисциплина

WHERE Количество_ часов > 60

 

В результате выполнения этой команды будет возвращен набор

строк, изображенный на рис. 7.10.

 

 

 

Ключевое слово LEEP [ОUTER]

При использовании ключевого слова LEFTв результат будут включены все строки левой таблицы, независимо от того, есть для них соответствующая строка в правой таблице или нет. В случае отсутствия строки в правой таблице для столбцов правой таблицы, включенных в результат выборки, устанавливается значение NULL.В приведенном ниже примере иллюстрируется использование ключевого слова LEFT[OUTER]для выборки данных.

SELECT Наименование, Семестр, Отчетность

FROM Дисциплины LEFT OUTER JOIN Учебный_ план ON

Учебный_ план.ID_ Дисциплина = Дисциплины. ID_ Дисциплина

WHERE {Наименование LIKE % информатик %)

 

Будет возвращен набор строк, изображенный на рис. 7.11. Как видно, по сравнению с использованием ключевого слова INNER, в результат запроса добавлена строка из таблицы «Дисциплины», которая удовлетворяет сформулированному условию отбора, но для которой не существует соответствующей строки в таблице «Учебный_ план». В столбцах Семестр и Отчетность (относящихся к таблице «Учебный_ план») для этих строк установлено значение NULL.

 

 

Ключевое слово RIGHT [ОUTER]

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

 

SELECT Отчетность, Семестр, Наименование

FROM Учебный_ план RIC»HT OUTER JOIN Дисциплины ОN

Учебный_ план. ID_ Дисциплина Дисциплины. ID_ Дисциплина

WHERE (Наименование LIKE '% информатик %')

 

Этот пример основывается на тех же данных, что и предыдущий, но связь таблиц устанавливается в обратном порядке. После выполнения приведенной инструкции будет получен результат, показанный на рис. 7.12.

 

Ключевое слово FULL (OUTER]

При использовании ключевого слова FULL в результат будут включены все строки как правой, так и левой таблицы. Применение ключевого слова FULL [OUTER] можно рассматривать как одновременное применение ключевых слов LEFT [OUTER] и RIGHT[OUTER].

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.