🔥Разбираем SQL на примере PostgreSQL — SELECT, JOIN, GROUP, HAVING, Coalesce и др.

preview_player
Показать описание


Изучаем классические реляционные базы данных и язык для работы с ними — SQL — на примере топовой открытой СУБД PostgreSQL. Если вас пугает JOIN, вы не понимаете GROUP BY, вас смущает вопрос отличия WHERE от HAVING — смотрите видео полностью и обязательно прорабатывайте все запросы вместе с нами! Мы создадим и изучим работу с базой данных для интернет-магазина, хранящую в себе товары, их фотографии, покупателей и их заказы.

00:00 Зачем знать SQL и базы данных
02:47 Виды баз данных
03:28 Понятие сущностей, проектирование больших систем
06:01 Сущности в реляционных базах данных
06:50 Проектирование схемы БД магазина на бумаге
10:27 Перенос схемы БД в PostgreSQL, создание БД и таблиц
15:50 Заполняем БД данными
17:40 SELECT, получение данных из БД
19:03 JOIN, объединение таблиц
23:25 LEFT JOIN, RIGHT JOIN, INNER JOIN
26:57 Удаление данных их таблиц, обновление данных таблиц
28:23 Пример комплексного запроса с несколькими JOIN
32:31 Группировка данных GROUP BY
34:11 COALESCE
34:47 Сортировка данных, ORDER BY
35:13 HAVING
36:26 LIMIT, OFFSET
38:09 Выводы, итоги

Другие наши видео:

/****************** about ******************/

Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:

Рекомендации по теме
Комментарии
Автор

Я лучше урока по SQL не видел нигде, это очень круто!

OleksandrPohribnyi
Автор

Я очень благодарен Алексею за его образовательную деятельность и это видео, но подозреваю, что базы данных не являются его основной специализацией. Хочу поправить некоторые вещи.
Эдгар Кодд назвал реляционные базы данных реляционными из-за присутствия в них так называемых реляций, простым языком - таблиц. Т.е. реляционная база данных - это табличная база данных. Даже если связей между таблицами нет, или таблица всего одна - это реляционная база данных. Хотя вынужден признать, что вне акедемических кругов такое заблуждение довольно распространено.
Диаграмма базы данных (db-diagram) и диаграмма сущностей и отношений (ER-diagram) - это похожие, но очень разные вещи. К примеру, промежуточной таблицы cart_product, которую нарисовал Алексей на ERD не будет, она реализует соединение многие ко многим. То, что мы види на картинке ближе по смыслу как раз к диаграмме базы данных, хотя на ней и не хватает многих ключевых вещей. Но для простой иллюстрации, конечно же, сгодится.
Уникальный идентификатор - это несколько двусмысленная вещь. Обычно под уникальным идентификаторм подразумевается ограничение (constraint) в структуре базы данных. Их, в отличии от первичного ключа (primary key), может быть несколько в таблице. Они просто говорят о том, что значение в колонке или комбинация значений по колонкам должна быть не повторяющейся. ID же в нашем случае - это искуственная колонка, созданая сугубо для добавления первичного ключа, который позволит идентифицировать конкретную строчку в таблице. Однако эту колонку вполне можно использовать и для бизнес-целей. К примеру, это будет номер нашего заказа. А вот покупателю абсолютно всё равно какой у него номер в системе, он его нигде не видит. Т.е. у сущности пользователя такого свойства как ID не будет, это артефакт сугубо уровня базы данных.
То что в видео названо полем, на самом деле называют атрибутом. В простонародье - колонка. Иногда встречается и "поле", но чаще всего под полем подразумевают пересечение колонки и строчки, т.е. конкретную ячейку таблицы. На стороне пользовательского интерфейса мы тоже видим "поля" - ячейки ввода, которые зачастую соответствуют ячейкам в строчке таблицы базы данных.
Благодарю за внимание и желаю всем успешного обучения!

EugenNiedaszkowski
Автор

40 нескучных и полезных минут. Отличный формат подачи!!! Не пожалел.

b-o-t-l-y
Автор

Отличный разбор. По БД хочу еще больше контента.

alexfish
Автор

Как считаете, стоит ли такой контент делать? Материалов по SQL в целом в сети — мегатонны.
Time codes:
00:26 — зачем знать SQL и базы данных
02:47 — виды баз данных
03:28 — понятие сущностей, проектирование больших систем
06:01 — сущности в реляционных базах данных
06:50 — проектирование схемы БД магазина на бумаге
10:27 — перенос схемы БД в PostgreSQL, создание БД и таблиц
15:50 — заполняем БД данными
17:40 — SELECT, получение данных из БД
19:03 — JOIN, объединение таблиц
23:25 — LEFT JOIN, RIGHT JOIN, INNER JOIN
26:57 — удаление данных их таблиц, обновление данных таблиц
28:23 — пример комплексного запроса с несколькими JOIN
32:31 — группировка данных GROUP BY
34:11 — COALESCE
34:47 — сортировка данных, ORDER BY
35:13 — HAVING
36:26 — LIMIT, OFFSET
38:09 — итоги

tdigital
Автор

Спасибо тебе, добрый человек!! У тебя очень крутые и ценные видосы. По постгресу можно еще :))) мне понравилось!

daredevil
Автор

40 минут годноты, спасибо за контент!

zdprgmq
Автор

Спасибо за отличное видео и понятное изложение

Oleksii_Leshchenko
Автор

Спасибо добрый человек 😊
Виртуальные обнимашки тебе 🤗

Lalalumba
Автор

Все:
я в 2019: ем салат
я в 2020: в салате какие-то сущности

alext.
Автор

Это именно то что мне было нужно для старта. Дает понимания больше чем некоторые курсы по sql на известных площадках. Спасибо!

stas_v
Автор

Вообще огонь! Наконец-то я понял что такое, left right и inner join. Спасибо!

mgnsrtl
Автор

Как раз готовлюсь к dba. Прям в яблочко. И вообще пора в школе давать такие вещи, мужики по 30 лет ковыряют запросы к базе. Стыдно, но другого пути нет - надо наверстывать.
Спасибо за годноту!

limonred
Автор

Четко и ясно, было бы интересно глянуть видосик по фишками постгреса

colonizatorgg
Автор

Огромное спасибо за отличное видео! Все замечательно разложено по полочкам!

Tehhie
Автор

Полезно и знакомо! Спасибо Вам! Столько времени разбирала и только сейчас начинаю диджитализироваться.. Огромное всем спасибо.

tatianaghafina
Автор

Могу сказать три вещи: 1. Очень крутой канал! 2. Топовый преподаватель! Мегаполезный контент!!!
Жаль, что нашел этот канал не по трендам utube или рекомендациям, а случайно обратил внимание на комментарий самого автора, написанный под одним из видео на канале ITборода.
Спасибо за то, что делитесь с нами своими знаниями!!! Пожалуйста, продолжайте в том же духе ;)
#Топлю_ За_ Python ))

ne_psixyu
Автор

Спасибо! Отличное видео! Можно еще подробнее рассказать про типы и индексы в таблицах? Таблицы для select’a и для insert’a.

vangog
Автор

Всегда хотел больше разобраться в SQL. Самый понятный для меня урок по JOIN в SQL. Спасибо

gzvjkzg
Автор

Действительно, это одно из лучших видео, которые я видел по базовым вещам в SQL!

alexeysytnikov