Inner Join, Cross join и Outer join

Соединение таблиц с использованием оператора join, типы и формы данного процесса. Описание синтаксиса прямого и перекрестного соединения, анализ соответственных запросов. Порядок и этапы реализации операции декартова произведения двух заданных таблиц.

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 21.12.2022
Размер файла 228,0 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Кыргызский Государственный Университет имени Ишенаалы Арабаева

Факультет Физика-Математического образования и информационных технологии

Inner Join, Cross join и Outer join

Икрам кызы Турсунай,

студент группы ФМО-И-15-19

Соединение таблиц с использованием оператора join

Если операторе Select после ключевого слова from указывается не одна а 2 таблицы, то в результате выполнение запроса, в котором отсуствует приложение where. Каждое строка одной таблицы будет соединена с каждой строкой второй таблицы.

Например: Если у нас две таблицы и мы хотим их соединить, мы используем следующий запрос;

Select * from student JOIN subject;

В этом запросе мы соединили две таблицы Student и Subject.

Существуют различные типы соединений MySQL:

· MySQL INNER JOIN (или иногда называют простое соединение)

· MySQL LEFT OUTER JOIN (или иногда называют LEFT JOIN)

· MySQL RIGHT OUTER JOIN (или иногда называют RIGHT JOIN)

· MYSQL CROSS JOIN

INNER JOIN (простое соединение)

Это наиболее распространенный тип соединения. MySQL INNER JOINS возвращает все строки из нескольких таблиц, где выполняется условия соединения.

Синтаксис

Синтаксис INNER JOIN в MySQL:

SELECT name_stud

FROM Student

INNER JOIN subject

ON student.name_stud = subject.kod_stud;

MySQL INNER JOIN будет возвращать записи, где student и subject будут пересекаться.

Пример

Ниже приведен пример MySQL INNER JOIN:

У нас есть таблица student с двумя полями (name_stud и sname_stud)

У нас есть еще одна таблица subject с тремя полями (stipendiya, и ID_subject).

Наш результирующий набор будет выглядеть следующим образом:

LEFT OUTER JOIN

Другой тип соединения называется MySQL LEFT OUTER JOIN. Этот тип соединения возвращает все строки из таблиц с левосторонним соединением, указанным в условии ON, и только те строки из другой таблицы, где объединяемые поля равны.

Синтаксис

Синтаксис для LEFT OUTER JOIN в MySQL:

SELECT columns

FROM student

LEFT [OUTER] JOIN subject

ON student.kod_stud = subject.kod_stud;

В некоторых базах данных LEFT OUTER JOIN заменяется на LEFT JOIN.

На этом рисунке, MySQL LEFT OUTER JOIN возвращает затененную область:

MySQL LEFT OUTER JOIN возвратит все записи из Student и только те записи из Subject, которые пересекаются с Student.

1

2

3

4

SELECT student.name_stud, student.sname_stud, subject.stipendiya

FROM student

LEFT JOIN orders

ON student.kod_stud = subject.kod_stud;

Этот пример LEFT OUTER JOIN возвратит все строки из таблицы student, и только те строки из таблицы subject, где объединяемые поля равны.

Если значение name_stud в таблице student не существует в таблице subject, все поля таблицы subject будут отображаться в результирующем наборе как NULL.

RIGHT OUTER JOIN. Другой тип соединения называется MySQL RIGHT OUTER JOIN. Этот тип соединения возвращает все строки из таблиц с правосторонним соединением, указанным в условии ON, и только те строки из другой таблицы, где объединяемые поля равны.

Синтаксис

Синтакси RIGHT OUTER JOIN в MySQL:

SELECT kod_stud

FROM student

RIGHT [OUTER] JOIN subject

ON student.kod_stud = subject.kod_stud;

В некоторых базах данных, RIGHT OUTER JOIN заменяется на RIGHT JOIN.

оператор таблица соединение

Этот пример RIGHT OUTER JOIN возвращает все строки из таблицы subject и только те строки из таблицы student, где объединяемые поля равны.

CROSS JOIN (перекрестное соединение) Использование оператора SQL CROSS JOIN в наиболее простой форме - без условия соединения - реализует операцию декартова произведения в реляционной алгебре. Результатом такого соединения будет сцепление каждой строки первой таблицы с каждой строкой второй таблицы. Таблицы могут быть записаны в запросе либо через оператор CROSS JOIN, либо через запятую между ними.

Пример. База данных - всё та же, таблицы - Student и Subject. Реализовать операцию декартова произведения этих двух таблиц.

Запрос будет следующим:

SELECT (*) Student CROSS JOIN Subject

Или без явного указания CROSS JOIN - через запятую:

SELECT (*) student, Subject

Пример. Та же база данных портала объявлений, таблицы Student и Subject. Используя перекрестное соединение, соединить таблицы так, чтобы данные полностью пересекались по условию. Условие - совпадение идентификатора категории в таблице Student и ссылки на категорию в таблице Subject.

Запрос будет следующим:

SELECT subject.stipendiy as ID_subject, student.name_stud

FROM Subjcet cross join Student

on subject.kod_stud = student.kod_stud

Запрос c перекрестным соединением по условию соединения полностью аналогичен запросу с внутренним соединением - INNER JOIN - или, учитывая, что слово INNER - не обязательное, просто JOIN.

Размещено на Allbest.ru


Подобные документы

  • Тестування програмного забезпечення як процес його дослідження для отримання інформації про якість. Автоматизація тестування програми Join It - Jigsaw Puzzle. Методика тестування, структура пакету та його модулів. Вимоги до програмного забезпечення.

    дипломная работа [2,4 M], добавлен 24.07.2013

  • Концептуальная и логическая модель баз данных. Алгоритм разработки БД для регистратуры поликлиники. Создание таблиц локальных БД через утилиту Database Desktop, формы ввода данных, вычислительного поля, фильтров и запросов. Соединение двух таблиц.

    курсовая работа [333,0 K], добавлен 19.06.2014

  • Создание таблиц базы данных в режиме конструктора. Схема связей между таблицами и содержание таблиц. Установление связи с поддержанием целостности. Структуры двух запросов (в режиме конструктора) и описание процесса их создания. Результаты вывода отчетов.

    курсовая работа [3,0 M], добавлен 28.06.2015

  • Виды и практические примеры теоретико-множественных операций в Oracle: соединение, объединение, пересечение. Соединение трех и более таблиц. Синтаксис соединения ANSI SQL/92 и ограничения ANSI SQL/86. Типы внешних соединений: левое, правое, полное.

    презентация [379,6 K], добавлен 14.02.2014

  • Путь обработки запроса в реляционной СУБД. Оптимизации запросов на примере Oracle 9.2. Исследования по оптимизации планов выполнения запросов за счёт нормализации таблиц, выбора табличного пространства и распределения таблиц по этому пространству.

    курсовая работа [364,8 K], добавлен 12.01.2012

  • Создание моделей данных, основных таблиц с помощью конструктора таблиц, связей между таблицами, форм для заполнения таблиц, запросов на выборку данных, отчетов для вывода на печать и начальной кнопочной формы. Основные объекты Microsoft Access.

    контрольная работа [4,5 M], добавлен 18.03.2012

  • Программа Word, позволяющая создавать таблицы, состоящие из строк и столбцов. Способы построения таблиц. Обработка таблиц и их форматирование. Вычисления в тексте и таблице. Разделение и соединение ячеек. Создание заголовков многостраничных таблиц.

    контрольная работа [1,7 M], добавлен 28.01.2012

  • Традиционные, специальные и дополнительные реляционные операции. Синтаксис и конструкции языка структурированных запросов SQL, типы данных. Запросы, выполняющие реляционные операции вычитания, пересечения и деления. Создание и обслуживание таблиц.

    контрольная работа [57,1 K], добавлен 21.06.2016

  • Создание и обработка таблиц, формы и простых запросов в Microsoft Access. Ключи, связи и индексы таблиц. Использование выражений в данном редакторе. Методика и направления создания отчетов, макросов и кнопочной формы, необходимый для этого инструментарий.

    курсовая работа [2,7 M], добавлен 23.12.2011

  • Программное обеспечение информационных технологий. Создание перекрестного запроса, свободных таблиц и диаграмм с помощью Мастера и Конструктора, используя в качестве основы предварительно созданный запрос из данных таблиц базы данных в СУБД ACCESS.

    лабораторная работа [164,7 K], добавлен 13.06.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.