background top icon
background center wave icon
background filled rhombus icon
background two lines icon
background stroke rhombus icon

Скачать "Начальный курс SQL.Соединение таблицы самой с собой SELF JOIN"

input logo icon
Теги видео
|

Теги видео

Начальный курс SQL
Соединение таблицы самой с собой SELF JOIN
база данных
субд
рсубд
sql
sqlite
mysql
postgresql
insert into
select from
delete from
update set
Урок
курс
образование
обучение
видеоурок
верстка
программирование
вебинар
интервью
новости web
web
веб
frontend
backend
фронтенд
бэкенд
html
css
js
php
lesson
programming
training
courses
сайт
верстка сайта
администрирование
сделать сайт
приложения на телефон
свое приложение
как сделать сайт
Субтитры
|

Субтитры

subtitles menu arrow
  • enАнглийский
Скачать
00:00:00
следующая тема это сел в join соединение
00:00:03
таблиц и самой с собой рассмотрим
00:00:07
таблицу music instrument
00:00:08
в ней хранятся название музыкальных
00:00:11
инструментов причем эти названия связаны
00:00:13
между собой в иерархию которая показана
00:00:16
в правой части слайда на верхнем уровне
00:00:20
иерархии две строки духовые инструменты
00:00:23
uint инструмент и струнные инструменты
00:00:26
strings в таблице music instrument
00:00:29
это первые две строки таблицы для них в
00:00:33
поле парент айги значение на у
00:00:36
поскольку они на верхнем уровне иерархии
00:00:38
и для них нет родительской строки на
00:00:43
втором уровне иерархии в духовых
00:00:46
инструментах есть деревянные духовые
00:00:48
инструменты удвоен
00:00:50
и медные духовые инструменты brass для
00:00:53
этих двух строк в таблице music
00:00:56
instrument в поле парент айди
00:00:58
указано значение родительского элемента
00:01:02
нашем случае один винт инструмент то
00:01:06
есть ссылка на духовые музыкальные
00:01:08
инструменты
00:01:09
у воду and есть три дочерних элемента
00:01:14
flud
00:01:15
rittz edelform они ссылаются колонкой
00:01:19
parent айди
00:01:20
на значение 2 воду int и так у нас
00:01:24
получилось иерархия или дерево
00:01:27
музыкальных инструментов при этом
00:01:29
таблица music instruments ссылается само
00:01:32
на себя колонка парам т.д.
00:01:35
это ссылка на колонку айди этой же
00:01:38
таблице такая ситуация когда таблица
00:01:42
ссылается само на себя
00:01:43
позволяет выстраивать различные иерархии
00:01:46
данных например это иерархия начальник
00:01:49
подчиненной когда у каждого человека
00:01:51
есть начальник кроме одного или
00:01:54
нескольких начальников самого верхнего
00:01:56
уровня у которых уже нет начальников и
00:02:01
так давайте запомним наш пример с
00:02:03
данными у нас три уровня иерархии на
00:02:06
верхнем уровне
00:02:08
uint инструмент и strings далее три
00:02:11
инструмента на втором
00:02:12
не буду and brass & all gone and hard
00:02:16
и на третьем уровне еще три инструмента
00:02:19
flud rittz и game show
00:02:24
давайте разберем такой пример возьмем
00:02:27
музыкальные инструменты
00:02:29
наша таблица в левой части слайда и для
00:02:32
каждого инструмента найдем название
00:02:35
родительского инструмента составе
00:02:37
которого он содержится то есть не просто
00:02:41
выведем номер parent айди
00:02:43
но и название этого инструмента parent
00:02:46
name справа тот результат который мы
00:02:50
хотим получить
00:02:52
чтобы получить такой результат
00:02:54
таблицу music instrument нужно соединить
00:02:57
саму с собой такой запрос пишется так же
00:03:01
как если бы мы соединяли две разные
00:03:03
таблицы просто представим что у нас есть
00:03:08
две таблицы 1 слева а другая справа в
00:03:14
запросе select
00:03:15
пишем следующим образом во втором
00:03:19
сначала пишем таблицу music instruments
00:03:22
одним алиасом а и затем эту же таблицу
00:03:25
но с другим алиасом б дальше соединение
00:03:31
таблиц происходит так же как если бы это
00:03:34
были две разных таблиц и берем первую
00:03:37
строку из левой таблицы ищем одну или
00:03:40
несколько соответствующих ей строк из
00:03:43
правой таблицы если соответствие нашлось
00:03:46
то записываем найденные значения в
00:03:49
результат запроса нашем случае для
00:03:53
первой строки
00:03:54
один винт инструмент parent айди
00:03:57
принимает значение на у
00:03:58
но поскольку у нас пишется внешние
00:04:01
соединения лев join the
00:04:04
эта строка попадает в результат запроса
00:04:06
просто в колонку parent name мы пишем
00:04:10
значение на у тоже самое со второй
00:04:13
строкой 46 strings
00:04:15
то же значение
00:04:19
далее строка 24 brass для нее в поле прн
00:04:23
тайге находится
00:04:25
единичка соответственно находим
00:04:28
соответствующую строку в таблице music
00:04:31
instrument it all behind инструмент и
00:04:34
записываем в результат запроса и так
00:04:39
далее для каждой строки из music
00:04:41
instruments мы находим родительскую
00:04:44
строку из той же таблицы
00:04:48
отдельно обратите внимание что в нашем
00:04:51
примере когда мы для каждой строки слева
00:04:53
находим родительскую строку справа это
00:04:57
родительская строка по смыслу может быть
00:04:59
только одна это потому что колонка айди
00:05:03
в таблице music instrument является
00:05:06
первичным ключом и все значения этой
00:05:09
колонке уникальны для каждого
00:05:11
конкретного значения может быть только
00:05:13
одна строка
00:05:14
а колонка parent айди это внешний ключ
00:05:18
который ссылается на колонку айди и той
00:05:21
же самой таблице получается что когда мы
00:05:25
с выполняем такое соединение таблиц и
00:05:28
самой с собой то это то же самое как
00:05:31
соединить две таблицы которые
00:05:33
соотносятся друг другу в отношении
00:05:36
многие к одному поэтому за двоение строк
00:05:40
в этом случае не происходит мы получили
00:05:43
в результате запроса столько же строк
00:05:45
сколько строк в таблице music instrument
00:05:49
при этом потери строк тоже не было в
00:05:52
этом нам помогло внешнее соединение
00:05:54
поскольку для строк верхняя уровня
00:05:57
родительских строк нету
00:05:59
если бы соединение было inner join the
00:06:02
эти строки бы потерялись поскольку
00:06:08
иерархия у нас имеет несколько уровней
00:06:10
то можно двигаться вверх по иерархии
00:06:13
несколько раз для этого можно сделать
00:06:16
несколько соединений таблиц в нашем
00:06:20
примере давайте шагнём еще на один
00:06:22
уровень вверх для каждого музыкального
00:06:25
инструмента найдем не только название
00:06:27
родительского инструмента это колонки
00:06:30
parent айди и parent name ну и название
00:06:33
инструмента на один уровень выше колонки
00:06:37
гпд и gp name
00:06:39
здесь буква г п это сокращение от
00:06:41
grandparent пишем запрос в нем два
00:06:47
соединения таблиц left outer join с
00:06:50
помощью первого соединения как и раньше
00:06:53
мы находим родительский инструмент
00:06:56
дальше еще одно соединение left outer
00:06:59
join причем условия соединения он все . иди
00:07:03
равно b . parent айди
00:07:05
ссылается на таблицу б то есть на
00:07:08
родительскую таблицу это бы у нас
00:07:11
используется три аллиасса а для самой
00:07:15
таблице b для родительской таблицы и c
00:07:19
для таблицы еще на один уровень выше
00:07:23
нашем примере для первых двух строк не
00:07:26
нашлось родительского инструмента и тем
00:07:29
более не нашлось инструментов более
00:07:31
верхнего уровня для 3 4 и 5 строк
00:07:35
таблицы нашлись родительские инструменты
00:07:38
но более верхнего уровня уже нет это
00:07:42
потому что эти стройки находятся на
00:07:44
втором уровне иерархии и наконец для
00:07:48
строк flud рис и game show
00:07:50
который находится на третьем уровне
00:07:52
иерархии нашлись как родительские
00:07:55
инструменты так и инструменты более
00:07:57
высокого уровня обратите внимание что
00:08:02
здесь мы двигались вверх по иерархии и
00:08:04
это определялось тем что в соединение
00:08:07
таблиц мы писали условии b
00:08:09
айди равно apparent айди то есть для
00:08:13
строк таблицы а мы выбирали колонку
00:08:15
паром дойди и далее искали в таблице б
00:08:19
родительскую строку можно и наоборот
00:08:24
двигаться вниз по иерархии то есть для
00:08:28
каждой строки таблицы находить не
00:08:31
родительские и дочерние строки
00:08:34
это может понадобиться когда задача
00:08:36
ставится так для одного или нескольких
00:08:39
инструментов найти все их дочерние
00:08:42
инструменты
00:08:44
давайте в качестве примера возьмем
00:08:46
таблицу music instrument и в ней выберем
00:08:49
только инструменты верхнего уровня в int
00:08:52
instruments and strings
00:08:54
это можно сделать с помощью условия
00:08:57
parent айди
00:08:58
и знал для каждой из этих двух строк
00:09:02
найдем дочерние инструменты для uint
00:09:06
инструмент таких до чайных инструментов
00:09:09
2 буду int и brass для strings датчане
00:09:14
инструмент один
00:09:15
але але an hour итак если мы шагаем вниз
00:09:20
по иерархии то у нас получился результат из трех
00:09:23
строк как же такой результат получить
00:09:30
опять представим что мы соединяем две
00:09:33
таблицы одна таблица music instrument
00:09:36
это бугая такая же самая таблица но с
00:09:39
другим алиасом
00:09:41
пишем запрос он очень похож на тот
00:09:45
запрос который мы писали раньше но
00:09:48
теперь условие соединения пишется по
00:09:50
другому б . parent айди равно а . иди
00:09:56
это значит что мы берем строки из
00:09:59
таблицы с мясом а ещё мне родительские и
00:10:03
дочерние строки поскольку дочерней строк
00:10:07
может найтись несколько то здесь уже
00:10:10
связь между таблицами не многие к одному
00:10:12
как раньше а один ко многим
00:10:15
одной строке слева может соответствовать
00:10:18
несколько строк справа плюс дочерних
00:10:22
строках может не найтись вовсе поэтому
00:10:25
если мы хотим чтобы строки из левой
00:10:28
таблицы в любом случае попали в
00:10:29
результат то используем left outer join
00:10:35
итак в нашем примере берем инструмент и
00:10:37
верхнего уровня пишем select from music
00:10:40
instrument is a
00:10:42
и в условии у и пишем а . parent айди
00:10:46
и знал чтобы отобрать только инструменты
00:10:49
верхнего уровня вообще можно было бы
00:10:53
начать двигаться с любого уровня епархии
00:10:56
мы для наглядности двигаемся с самого
00:10:58
верха то есть берем инструмент и
00:11:01
верхнего уровня их две штуки и далее к
00:11:05
ним присоединяем дочерние инструменты
00:11:08
этого двигаясь вниз по иерархии на один
00:11:11
уровень у нас получился результат из
00:11:14
трех строк можем сделать второй шаг вниз
00:11:21
по иерархии возьмем результат того
00:11:25
запроса который получился когда мы
00:11:27
сделали только один шаг по иерархии этот
00:11:30
результат указан сверху слева и далее
00:11:34
найдем для каждой строки этой таблице
00:11:36
дочерние строки для первой строки brass
00:11:41
дочерних строк не нашлось пишем эту
00:11:45
строку добавляя значение в колонке
00:11:48
гр and child айди играм child нейм для
00:11:52
второй строки удвоен нашлось три
00:11:55
дочерних строке пишем три дочерних
00:11:58
строки в результат запроса для третьей
00:12:02
строки
00:12:03
а и о леонхарт не нашлось дочерних строк
00:12:07
пишем эту строку добавляя значение нал в
00:12:10
колонке гр and child айди игр and child
00:12:13
ней запас пишется так к предыдущему
00:12:18
запросу добавляем еще один left outer
00:12:20
join с той же таблицы music instrument
00:12:23
но с другим алиасом и в списке select
00:12:26
указываем название колонок так чтобы
00:12:29
назвать дочерней колонки child одичал
00:12:32
name она еще один уровень ниже g and
00:12:35
child айди
00:12:36
игр and child name
00:12:40
итак мы рассмотрели соединение таблица
00:12:42
самой с собой по сути это очень похожи
00:12:45
на соединении двух разных таблиц и когда
00:12:48
мы говорим об иерархии
00:12:50
то можно двигаться как вверх так и вниз
00:12:53
по иерархии элементов

Описание:

Начальный курс SQL.Соединение таблицы самой с собой SELF JOIN

Готовим варианты загрузки

popular icon
Популярные
hd icon
HD видео
audio icon
Только звук
total icon
Все форматы
* — Если видео проигрывается в новой вкладке, перейдите в неё, а затем кликните по видео правой кнопкой мыши и выберите пункт "Сохранить видео как..."
** — Ссылка предназначенная для онлайн воспроизведения в специализированных плеерах

Вопросы о скачивании видео

mobile menu iconКак можно скачать видео "Начальный курс SQL.Соединение таблицы самой с собой SELF JOIN"?mobile menu icon

  • Сайт http://unidownloader.com/ — лучший способ скачать видео или отдельно аудиодорожку, если хочется обойтись без установки программ и расширений. Расширение UDL Helper — удобная кнопка, которая органично встраивается на сайты YouTube, Instagram и OK.ru для быстрого скачивания контента.

  • Программа UDL Client (для Windows) — самое мощное решение, поддерживающее более 900 сайтов, социальных сетей и видеохостингов, а также любое качество видео, которое доступно в источнике.

  • UDL Lite — представляет собой удобный доступ к сайту с мобильного устройства. С его помощью вы можете легко скачивать видео прямо на смартфон.

mobile menu iconКакой формат видео "Начальный курс SQL.Соединение таблицы самой с собой SELF JOIN" выбрать?mobile menu icon

  • Наилучшее качество имеют форматы FullHD (1080p), 2K (1440p), 4K (2160p) и 8K (4320p). Чем больше разрешение вашего экрана, тем выше должно быть качество видео. Однако следует учесть и другие факторы: скорость скачивания, количество свободного места, а также производительность устройства при воспроизведении.

mobile menu iconПочему компьютер зависает при загрузке видео "Начальный курс SQL.Соединение таблицы самой с собой SELF JOIN"?mobile menu icon

  • Полностью зависать браузер/компьютер не должен! Если это произошло, просьба сообщить об этом, указав ссылку на видео. Иногда видео нельзя скачать напрямую в подходящем формате, поэтому мы добавили возможность конвертации файла в нужный формат. В отдельных случаях этот процесс может активно использовать ресурсы компьютера.

mobile menu iconКак скачать видео "Начальный курс SQL.Соединение таблицы самой с собой SELF JOIN" на телефон?mobile menu icon

  • Вы можете скачать видео на свой смартфон с помощью сайта или pwa-приложения UDL Lite. Также есть возможность отправить ссылку на скачивание через QR-код с помощью расширения UDL Helper.

mobile menu iconКак скачать аудиодорожку (музыку) в MP3 "Начальный курс SQL.Соединение таблицы самой с собой SELF JOIN"?mobile menu icon

  • Самый удобный способ — воспользоваться программой UDL Client, которая поддерживает конвертацию видео в формат MP3. В некоторых случаях MP3 можно скачать и через расширение UDL Helper.

mobile menu iconКак сохранить кадр из видео "Начальный курс SQL.Соединение таблицы самой с собой SELF JOIN"?mobile menu icon

  • Эта функция доступна в расширении UDL Helper. Убедитесь, что в настройках отмечен пункт «Отображать кнопку сохранения скриншота из видео». В правом нижнем углу плеера левее иконки «Настройки» должна появиться иконка камеры, по нажатию на которую текущий кадр из видео будет сохранён на ваш компьютер в формате JPEG.

mobile menu iconСколько это всё стоит?mobile menu icon

  • Нисколько. Наши сервисы абсолютно бесплатны для всех пользователей. Здесь нет PRO подписок, нет ограничений на количество или максимальную длину скачиваемого видео.