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

แชร์
ฝัง
  • เผยแพร่เมื่อ 17 พ.ค. 2024
  • Мой курс «Хардкорная веб-разработка» - course.to.digital
    Книжный клуб Ботаним!, где мы читаем хорошие ИТ-книги: botanim.to.digital/
    Telegram: t0digital.t.me
    Сказать спасибо за это видео можно здесь - boosty.to/digitalize.team
    Изучаем классические реляционные базы данных и язык для работы с ними - 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 Выводы, итоги
    Другие наши видео:
    * чем так крут Python - • Чем так крут Python - ...
    * обзор нововведений Python 3.8 - • Python 3.8 - офигенный...
    * издательская система Latex - • Основы LaTeX для тех, ...
    /****************** about ******************/
    Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:
    - Диджитализируй digitalize.team, разрабатываем сложные IT системы для бизнеса;
    - Salesbeat salesbeat.pro, комплексный модуль доставки для интернет магазинов.
    Если у вас есть проект на разработку, пишите нам на hi@digitalize.team.
    С другими предложениями, а также если вам нужна одна или несколько индивидуальных консультаций/уроков по разработке (3000 руб/час), пишите мне на alexey@salesbeat.pro.
    Telegram канал - t.me/t0digital
    ВК - digitalize.team
    RuTube - rutube.ru/channel/24802975/ab...
    Дзен - dzen.ru/id/6235d32cb64df01e6e...

ความคิดเห็น • 1K

  • @t0digital
    @t0digital  4 หลายเดือนก่อน +2

    Мой курс «Хардкорная веб-разработка» - course.to.digital
    Вжух!

  • @OleksandrPohribnyi
    @OleksandrPohribnyi 3 ปีที่แล้ว +247

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

    • @t0digital
      @t0digital  3 ปีที่แล้ว +7

      Спасибо большое!

    • @kevart9645
      @kevart9645 3 ปีที่แล้ว +1

      @@user-wp2ek8mx3c а вы это к чему написали, стесняюсь спросить?
      Книга - сухой материал, видео - наглядный пример с применением "своими словами", далее - "самопрактика".
      Чему вы сочувствуете?

    • @vladislav2819
      @vladislav2819 2 ปีที่แล้ว

      @@manOfPlanetEarth Ни кому не пожелаю такого, прежде чем писать подобного рода комментарии - переосмыслите свою жизнь

  • @b-o-t-l-y
    @b-o-t-l-y 4 ปีที่แล้ว +20

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

    • @t0digital
      @t0digital  4 ปีที่แล้ว

      Спасибо!

  • @alexfish289
    @alexfish289 4 ปีที่แล้ว +228

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

    • @t0digital
      @t0digital  4 ปีที่แล้ว +16

      Возможно будут :) посмотрим, как этот материал зайдёт

    • @MAIVSHOW
      @MAIVSHOW 4 ปีที่แล้ว +2

      @Watson Holms 2000-2500тыс? нет. при условии, что на канале уже 10к. Обидно-обидно за наше сообщество которому нравится пользоваться денератроном.

    • @user-eq8vb7wu8n
      @user-eq8vb7wu8n 4 ปีที่แล้ว +18

      Берешь книгу Дейта «Введение в теорию реляционных БД» - здесь все, что нужно, чтобы построить любую БД. Что касается специализированных БД - Ральф Кимболл, Билл Инмон. Дэн Линстедт. Анатолий Тенцер. Этого достаточно для 99.9% случаев информационных систем.

    • @alexfish289
      @alexfish289 4 ปีที่แล้ว +2

      @@user-eq8vb7wu8n благодарю за наводку. Обязательно изучу.

    • @anggman
      @anggman 4 ปีที่แล้ว

      Очень понравилось! Жду продолжения. В своё время разбирал достаточно подробно T-SQL, но нашел для себя тоже много интересного в этом видео

  • @user-or7ne2fb6o
    @user-or7ne2fb6o 4 ปีที่แล้ว +8

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

  • @t0digital
    @t0digital  4 ปีที่แล้ว +437

    Как считаете, стоит ли такой контент делать? Материалов по 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 - итоги

    • @ioannhide3355
      @ioannhide3355 4 ปีที่แล้ว +25

      нужно видео как связать БД и сайт ) как все настроить. Как создать, что такое реляционные БД уже куча видео. Теорией уже наелись все )

    • @senatortre7326
      @senatortre7326 4 ปีที่แล้ว +1

      Вопросы.
      1 Под видео с разворотом сервера были инструкции, можно так же по sql?
      2 Начал изучать анализ данных, могут ли нумпай с пандасом + стандартные в питоне модули для работы с данными стать альтернативой sql запросов и штук типо постгри и мускула?
      2.1 Например, отправляю к вам резюме, там будут эти библиотеки, но не будет знаний по sql, что бы на это ответили?))
      3 (*если 2.1 вариант не проканает xD) Книги по sql? Статьи, мануалы...

    • @t0digital
      @t0digital  4 ปีที่แล้ว +5

      ​@@senatortre7326 1. Нет, SQL код из этого видео не сохранял специально - вам надо его набрать, если хотите проработать SQL
      2. Анализ данных - нужен и SQL, и пандас, и много всего еще
      2.1. Нам анализ данных сейчас не нужен - и специалистов в команде по этой теме тоже нет.
      3. Выберите нужную вам СУБД и прокачивайте её SQL, базовый он везде одинаковый, но чуть глубже - особенностей много.

    • @senatortre7326
      @senatortre7326 4 ปีที่แล้ว +5

      Диджитализируй! АйТи студия Спасибо за ответ. Тогда ответ на вопрос «нужен ли такой контент» - однозначно да! Подача очень крутая, а тема не из простых, поэтому лучше буду ждать и учить по вашим урокам, чем по материалам которые уже есть.. те же лекции российских разрабов постгри в ютубе много тяжелее воспринимаются. Ждём продолжения! Успехов. :)

    • @t0digital
      @t0digital  4 ปีที่แล้ว +2

      @@senatortre7326 Спасибо!

  • @Oleksii_Leshchenko
    @Oleksii_Leshchenko 4 ปีที่แล้ว +10

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

  • @stas_v
    @stas_v ปีที่แล้ว +2

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

  • @user-mg7ns1rt7l
    @user-mg7ns1rt7l 3 ปีที่แล้ว +2

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

  • @alext.4131
    @alext.4131 4 ปีที่แล้ว +162

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

    • @t0digital
      @t0digital  4 ปีที่แล้ว +2

      Хахаах:)

    • @Kascheybiker
      @Kascheybiker 4 ปีที่แล้ว +3

      Главное - не гномики.

    • @justkrybik
      @justkrybik 4 ปีที่แล้ว +2

      @@Kascheybiker если-что мы их почистиим))

    • @user-qv3pg1ew4g
      @user-qv3pg1ew4g 3 ปีที่แล้ว

      Ырырырыррыры

    • @Dyadya_Sasha
      @Dyadya_Sasha 3 ปีที่แล้ว

      В 2021 сущности в виде гномика

  • @EugenNiedaszkowski
    @EugenNiedaszkowski 3 ปีที่แล้ว +228

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

    • @nadejdat4969
      @nadejdat4969 2 ปีที่แล้ว +9

      Толковый комментарий + каналу! Спасибо, за обращение внимание на нюансы!!!

    • @user-ss4gz8xk9h
      @user-ss4gz8xk9h 2 ปีที่แล้ว +3

      А можно ссылку на источник, в котором написано, что бд называется реляционной именно из-за того, что она табличная, а не потому, что между таблицами в этих бд можно создавать связи?

    • @india23061974
      @india23061974 2 ปีที่แล้ว +5

      @@user-ss4gz8xk9h может, это поможет найти более точную информацию © Работа Кодда дает точное, математическое определение реляционной базы данных, а также теоретический фундамент для операций, которые могут быть вы­полнены над ней. Однако более полезно следующее неформальное определение реляционной базы данных.
      Определение. Реляционной называется база данных, в которой все данные, доступные пользо­вателю, организованы в виде таблиц, а все операции базы данных выполняются над этими таблицами

    • @EugenNiedaszkowski
      @EugenNiedaszkowski 2 ปีที่แล้ว +8

      @@user-ss4gz8xk9h да, конечно:
      en.wikipedia.org/wiki/Relational_database
      en.wikipedia.org/wiki/Relation_(database)
      Так как термин придумал один человек, а именно Эдгар Кодд, то тут всё довольно просто. Некая неразбериха в русскоязычной среде возникла именно из-за "трудностей перевода".

    • @user-ss4gz8xk9h
      @user-ss4gz8xk9h 2 ปีที่แล้ว +2

      @@EugenNiedaszkowski спасибо большое

  • @Tehhie
    @Tehhie 3 ปีที่แล้ว +1

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

  • @alexeysytnikov2529
    @alexeysytnikov2529 3 ปีที่แล้ว

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

  • @user-zd4pr5gm4q
    @user-zd4pr5gm4q 4 ปีที่แล้ว +31

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

    • @t0digital
      @t0digital  4 ปีที่แล้ว +1

      спасибо!

  • @pavloshevchuk8931
    @pavloshevchuk8931 3 ปีที่แล้ว +3

    Нормальный рабочий почерк. Главное, что всё понятно.

  • @chestermorou1367
    @chestermorou1367 3 ปีที่แล้ว

    Однозначно бомба.
    Материал подан очень грамотно.
    Слушать и практиковать легко.
    Спасибо автору.

  • @user-to2iu2rx6f
    @user-to2iu2rx6f 2 ปีที่แล้ว

    Большое спасибо, сжато, без воды, и все понятно

  • @daredevil8999
    @daredevil8999 4 ปีที่แล้ว +79

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

    • @t0digital
      @t0digital  4 ปีที่แล้ว +4

      Спасибо!

    • @catsapp
      @catsapp 3 ปีที่แล้ว +1

      а постгрес луче чем майсикуэл?

  • @vangog63
    @vangog63 4 ปีที่แล้ว +4

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

  • @stan5214
    @stan5214 4 ปีที่แล้ว

    Очень сжатое и внятное объяснение операций, удобное видео 🙂

  • @tatianaghafina627
    @tatianaghafina627 3 ปีที่แล้ว

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

  • @colonizatorgg5960
    @colonizatorgg5960 4 ปีที่แล้ว +20

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

    • @t0digital
      @t0digital  4 ปีที่แล้ว +5

      возможно сделаем. Спасибо!

  • @xezard6534
    @xezard6534 3 ปีที่แล้ว +3

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

  • @user-gz6vj8kz9g
    @user-gz6vj8kz9g 2 ปีที่แล้ว +1

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

  • @user-bk4ko3tn6e
    @user-bk4ko3tn6e 2 ปีที่แล้ว

    Замечательное объяснение! Несмотря на то, что всего много, информация понимается интуитивно! Спасибки

  • @ne_psixyu
    @ne_psixyu 4 ปีที่แล้ว +3

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

  • @sergratkevich1850
    @sergratkevich1850 4 ปีที่แล้ว +7

    Большое спасибо, про Mongo DB что нибудь подобное было бы круто сделать))

  • @user-hs7jm3nc2e
    @user-hs7jm3nc2e 3 ปีที่แล้ว

    Спасибо за отличное объяснение. Очень наглядно и доходчиво.

  • @user-nx7ui4tk8j
    @user-nx7ui4tk8j 3 ปีที่แล้ว

    Спасибо, обновил свои знания. Очень все чётко и понятно

  • @limonred5283
    @limonred5283 4 ปีที่แล้ว +14

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

    • @t0digital
      @t0digital  4 ปีที่แล้ว

      Спасибо! Я тоже думаю, что это должно быть в школе. SQL даже в экселе есть встроенный :)

    • @MrRoostick
      @MrRoostick 3 ปีที่แล้ว +1

      ничего стыдного, если не sql в школе, то мы в этом не виноваты))

  • @nkhitrov
    @nkhitrov 4 ปีที่แล้ว +7

    как всегда хорошее видео, приятно смотреть, но не очень понравился момент с джоинами. часто объясняют их на кругах эйлера, но под капотом оно все же не так работает, и некоторые особо щепитильные лиды ловят на такого рода ошибках (в вузах на экзаменах по дискре и бд кстати тоже на этом ловят).
    Правильнее, на мой взгляд, все таки объяснять на декартовом произведении, как оно и работает, просто с оговоркой, что если джоин обрабатывается по первичным ключам, тогда можно представлять через круги эйлера.
    Но видео все равно годное, жду следующего видео)
    В целом таких материалов действительно много, но они все про основы. Хотелось бы увидеть больше видео по различным хакам, фишкам и т.п. вещам (собстно за это и нравится канал)
    Ну и ссылка на статью с примерами, кому интересно:
    habr.com/ru/post/448072/

  • @UnitedIngvar
    @UnitedIngvar 2 ปีที่แล้ว +1

    За 40 минут закрепил свои базовые знания по SQL
    Спасибо!

  • @user-ig9lk9bu9e
    @user-ig9lk9bu9e 3 ปีที่แล้ว

    Всё грамотно и подробно объяснено! Большое спасибо автору!

  • @nikolayharlamov7990
    @nikolayharlamov7990 4 ปีที่แล้ว +7

    relation это про отношение из теории множеств

  • @andreymlv
    @andreymlv 3 ปีที่แล้ว +4

    хотелось бы узнать про книжечки. что посоветуешь по базам данных?

  • @54INT
    @54INT 10 หลายเดือนก่อน

    Отличный материал чтобы освежить память и вспомнить основы SQL, спасибо!

  • @krgr1449
    @krgr1449 3 ปีที่แล้ว

    круто, без воды всё 👍 спасибо!

  • @yodapunishes
    @yodapunishes 4 ปีที่แล้ว +5

    Потрясающий подгон к собеседованию!!!

  • @nmi2939
    @nmi2939 4 ปีที่แล้ว +23

    Лайк неглядя!

    • @t0digital
      @t0digital  4 ปีที่แล้ว

      Спасибо!

  • @annazhydko2459
    @annazhydko2459 4 ปีที่แล้ว

    Очень круто! Спасибо Вам большое

  • @vladislav3105
    @vladislav3105 2 ปีที่แล้ว

    Гениальное объяснение. Спасибо вам большое)
    Прояснил наконец-то джоины 👍

  • @simonporot5089
    @simonporot5089 3 ปีที่แล้ว +9

    Было бы прикольно серию уроков по построению и понятию сущностей, связей (более детальней)

    • @meosaganami5472
      @meosaganami5472 2 ปีที่แล้ว

      Нет в РСУБД ни сущностей, ни связей

  • @a2a4rrooman
    @a2a4rrooman 2 ปีที่แล้ว +16

    Возможно ошибка - на 33:56 вместо "group by c.name" должно быть "group by c.id" . А в твоем запросе ты получишь сумму всех Василиев, а имена могут повторяться у юзеров.

    • @meosaganami5472
      @meosaganami5472 2 ปีที่แล้ว

      больше скажу - у них у всех вообще может не быть имён и всего остального кроме id, но автора такие мелочи не смущают.

    • @standarttechnology4477
      @standarttechnology4477 ปีที่แล้ว

      @@meosaganami5472 интересно, поле не было указано not null? Или почему их может не быть?

    • @meosaganami5472
      @meosaganami5472 ปีที่แล้ว

      @@standarttechnology4477 всё верно, не было указано
      З.Ы.
      как же это круто, наверное - сидеть на маке и долбиться в глаза в консоли, самому и зрителям массу впечатлений гарантируя

  • @bekbolottemirkulov2984
    @bekbolottemirkulov2984 3 ปีที่แล้ว

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

  • @sevashpun
    @sevashpun 3 ปีที่แล้ว

    Спасибо большое! Очень хорошо и доступно объясняешь :)

  • @postal134
    @postal134 4 ปีที่แล้ว +124

    Спасибо за отличное видео, но есть один минус. на 19 минуте вы объясняете джоины с использованием алиаса не задумываясь о том, что эту конструкцию люди могут не понимать select pp.* from product_photo pp; Я, например, не сразу понял, что значит тут "pp." ? оказывается, что "pp." , "product_photo.*" и "*" эквивалентны

    • @anatoliigrynchuk3325
      @anatoliigrynchuk3325 3 ปีที่แล้ว +4

      использование алиасов типа pp считаю не очень хорошим подходом....

    • @Slashh
      @Slashh 3 ปีที่แล้ว +4

      product_photo и "*", не эквиваленты. * - это all

    • @user-wm5kp9fy4n
      @user-wm5kp9fy4n 3 ปีที่แล้ว +2

      @@anatoliigrynchuk3325 абсолютно адекватный подход. Кайф всегда полные названия таблиц писать?

    • @anatoliigrynchuk3325
      @anatoliigrynchuk3325 3 ปีที่แล้ว +10

      @@user-wm5kp9fy4n Не кайф читать потом всякие рр в сложных запросах. А что бы не писать полные названия таблиц - для этого есть интелисенс, но для этого нужно инструмент нормальный использовать. Вы в C# тоже используете в качестве названия индентификаторов всяки рр, пп.... и тому подобное?

    • @etonecheg2401
      @etonecheg2401 3 ปีที่แล้ว +2

      @@anatoliigrynchuk3325 Как вы обойдётесь без алиасов, если обращаетесь к одной и той же таблице в запросе больше одного раза?
      Я имею ввиду ситуацию, когда вам нужно написать from table_name в одном подзапросе, и from table_name в другом подзапросе.

  • @Vivavatnik
    @Vivavatnik 3 ปีที่แล้ว +12

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

    • @user-se3nz9nn8e
      @user-se3nz9nn8e 3 ปีที่แล้ว +5

      Согласна, новичок вообще не поймет и сбежит нафиг..

  • @lokampsokolov
    @lokampsokolov 4 ปีที่แล้ว +2

    Спасибо за видео!

  • @pro100denchik
    @pro100denchik 2 ปีที่แล้ว

    Кратко. Ясно. Лаконично. Спасибо за хороший материал.

  • @user-bf2iw8id4v
    @user-bf2iw8id4v 4 ปีที่แล้ว +4

    жаль что узнавая про форенкей мы не узнали про бэкрефы)) а вообще есть такая беда у ру сегмента обучающих видео, основы рассказывают многие, а потом запал пропадает и бросают ролики пилить. Как итог куча видосов про основы и ни одного русскоязычного полного курса. Надеюсь вы когда-нибудь запилите мегаобучалку по sqlalchemy "От основ до магии". Спасибо за видосы.

    • @t0digital
      @t0digital  4 ปีที่แล้ว

      backref это же ORM'ная концепция, на уровне БД / SQL там обычный Foreign key, соединяющий 2 таблицы. Я вообще, стоит сказать, не очень люблю ORM для сложных запросов, голый SQL даёт понимание того, как запрос будет работать с точки зрения эффективности, ORM далеко не всегда

    • @user-bf2iw8id4v
      @user-bf2iw8id4v 4 ปีที่แล้ว

      @@t0digital зато ормом один раз в приложении пишем все запросы, а потом подрубаем любую субд которую поддерживает данный орм. А чистые запросы превратятся в серьёзною боль если тот же проект решат запустить не на мускуле а на посгре. В любом случае орм это только инструмент придуманный для решения конкретных задач. его не везде пихать нужно, но и он где то будет лучше row sql

    • @t0digital
      @t0digital  4 ปีที่แล้ว +2

      @@user-bf2iw8id4v безболезненный переезд на новую БД это утопия что с ORM, что без него, ну, разве что проект совсем крошечный. Для крошечного и обычный сырой SQL будет вполне переносим, все современные СУБД реализуют базовые операции select, delete, update и delete одинаково. А если используем что-то чуть глубже из возможностей субд, то тут начинается свистопляска, ORM не спасёт. ORM не плох, просто, вы правильно говорите, не надо его использовать везде, там, где нужна max эффективность сырой SQL рулит, там уже не до переносимости SQL/ORM, там вопрос быстрее под нагрузкой данные из БД достать, заюзав все её кастомные фичи и особенности на максимум:)

  • @user-zj1qk2fx4p
    @user-zj1qk2fx4p 3 ปีที่แล้ว +11

    Урок полезный и интересный! НО, учитывая, что это видео рекомендовалось для самоизучения абсолютно нулячим тестировщикам, то оно фактически бесполезно, ведь ничего не понятно. Где создавать базу, как прописывать запросы - этого тут нет

  • @sergiomarsh9067
    @sergiomarsh9067 3 ปีที่แล้ว

    Спасибо за урок, очень полезно!

  • @alexxello8502
    @alexxello8502 4 ปีที่แล้ว

    До слёз! Давай еще! Рви душу

  • @736939
    @736939 4 ปีที่แล้ว +16

    Плиз Туториалы по Джанго и Фласку! ТОЛЬКО ОТ ВАС (другие ссылки не катят) :)

    • @t0digital
      @t0digital  4 ปีที่แล้ว +4

      Спасибо:) Возможно сделаем!

  • @bolatmukashev2830
    @bolatmukashev2830 2 ปีที่แล้ว +12

    Слишком сложно. Давай 10 часовую версию с детальным разбором каждого метода)

    • @banzaika
      @banzaika ปีที่แล้ว +2

      Сначала нужно чуть чуть почитать книгу, одну главу и влезть в тему

    • @kloynism
      @kloynism 7 หลายเดือนก่อน

      какую книгу?@@banzaika

    • @banzaika
      @banzaika 7 หลายเดือนก่อน

      @@kloynism советую Моргунова

  • @Dm-erofeev
    @Dm-erofeev ปีที่แล้ว

    Алексей, СПАСИБО! Отличное видео!!

  • @vitalyburyak
    @vitalyburyak 3 ปีที่แล้ว

    Спасибо! Очень классный материал!
    Очень хотелось бы ещё разобраться с выборками и сортировкой по дате.

  • @obehobeh9984
    @obehobeh9984 4 ปีที่แล้ว +3

    2:47 "...есть два больших семейства... реляционные... и, так называемые NoSQL базы данных"
    Скажу по секрету, есть еще и прочие базы данных, кроме реляционных и NoSQL
    Иерархическая
    Объектная и объектно-ориентированная
    Объектно-реляционная
    Сетевая
    Функциональная
    и т.д.
    Если идет работа с Python, то можно вместо понятий "сущность"(таблица) и проч., говорить, что это класс и есть его свойства(поля), а также методы(функции) работы с ними, и т.д., и т.п.
    Это я, так сказать, начал разбирать, по ходу изучения ЯП Python. Помогает немного въехать в язык.

    • @t0digital
      @t0digital  4 ปีที่แล้ว

      Не надо говорить "вместо". Sql не имеет отношения к питону, это разные технологии, которые могут быть использованы вместе, но могут и не быть.

    • @obehobeh9984
      @obehobeh9984 4 ปีที่แล้ว

      @@t0digital Я имел ввиду использование/изучение языка Python вообще, а не технологию баз данных. Так вот, по моему, при изучении языка Python(или какого-либо другого языка программирования), очень полезно проводить параллели между "сущность" и "таблица" в базе и т.д.

  • @sriyaputra
    @sriyaputra 4 ปีที่แล้ว +5

    Дружище, это просто охуенно!

  • @user-iu5vc6um4o
    @user-iu5vc6um4o 3 ปีที่แล้ว

    Спасибо большое, вышел действительно очень полезный урок!

  • @apanchuk
    @apanchuk 3 ปีที่แล้ว

    Отличный материал, спасибо!)

  • @boriskulagin6582
    @boriskulagin6582 3 ปีที่แล้ว +6

    Алексей, расскажите какая ручка у вас в кадре? Перьевая или это гибрид =)

    • @user-fs9gp6oz8x
      @user-fs9gp6oz8x 3 ปีที่แล้ว +2

      Тоже хочу узнать про ручку:)

    • @QuAzI_NODE
      @QuAzI_NODE 3 ปีที่แล้ว

      Присоединяюсь к опросу. А то что-то с двумя последними мне не везло и они дико мазали и текли

    • @youmeek
      @youmeek 3 ปีที่แล้ว

      Если интересно, он ответил ниже: Lamy Safari перьевая )

    • @peskovdev
      @peskovdev ปีที่แล้ว

      Тоже присоединяюсь к опросу. Какая ручка, Алексей?

  • @lokampsokolov
    @lokampsokolov 4 ปีที่แล้ว +4

    Расскажи, если не трудно про алиасы в твоем примере, не совсем понятно.

    • @t0digital
      @t0digital  4 ปีที่แล้ว +7

      обычно алиас в запросе это просто сокращенное название таблицы, чтобы ссылаться на её колонки через точку не с полным названием таблицы, а с сокращённым алиасом.
      Напр:
      select users.id, emails.email from users left join emails on users.id=emails.user_id;
      можно заменить на:
      select u.id, e.email from users u left join emails e on users.id=emails.user_id;
      или:
      select u.id, e.email from users as u left join emails as e on users.id=emails.user_id;

    • @lokampsokolov
      @lokampsokolov 4 ปีที่แล้ว +1

      @@t0digital спасибо, теперь все понятно )

  • @coolemator
    @coolemator 2 ปีที่แล้ว

    Просто взял и объяснил то что я не мог понять. Спасибо.

  • @user-is9fv5bi7x
    @user-is9fv5bi7x ปีที่แล้ว

    Очень вам благодарен за такой полезный канал.

  • @Mike-mc5ll
    @Mike-mc5ll 3 ปีที่แล้ว +3

    Спасибо за "эскюэль", а не всякие режущие ухо "сиквелы".

  • @egorpetrov6652
    @egorpetrov6652 4 ปีที่แล้ว +6

    Спасибо за видео. Польза, наверное, есть, но все как-то «галопом по Европе». Взять тот же join. Всё разъяснили. Но когда таких джоинов в запросе стало два, затем три, как новичку понять какая таблица теперь левая для каждого нового джоина? Самая левая или та, что левее оператора? Или это уже относится к предвыборке? Я не понял. Пробовать различные выборки самому можно и нужно, чтобы понять логику. Но это как изучение «чёрного ящика». И именно здесь обязательны (желательны) разъяснения специалиста как работают операторы, чтобы навести порядок в голове учеников. Это хорошо было проделано с операторами where и having. И ещё, печатайте текст чуть помедленнее, но без ошибок. Раздражает это постоянное перепечатывание.

  • @iurii.anfinogenov
    @iurii.anfinogenov 4 ปีที่แล้ว +1

    Все супер, продолжайте в том же духе, многие вам благодарны!

    • @t0digital
      @t0digital  4 ปีที่แล้ว

      Спасибо! Будем продолжать!

  • @sergeiarhipenko872
    @sergeiarhipenko872 3 ปีที่แล้ว

    Кратко, ясно, информативно! Дикция - это что-то из неописуемого! Спасибо большое!!!

    • @t0digital
      @t0digital  3 ปีที่แล้ว

      Спасибо! Рад, что понравилось:)

  • @grittyzavr
    @grittyzavr 4 ปีที่แล้ว +5

    Будешь как-то освещать ситуацию с nginx?

    • @t0digital
      @t0digital  4 ปีที่แล้ว +14

      Я не смог разобраться в этой теме настолько, чтобы понять, откуда там в действительности ноги растут и куда это движется, поэтому не хочу комментировать, просто снимая хайп на теме. То, что мы видим - это отвратительно, но это верхушка айсберга.

  • @vkulpinov
    @vkulpinov 4 ปีที่แล้ว +50

    Спасибо за работу, однако подача материала явно не для новичка в sql, многие понятия объяснены на уровне "ну вы наверное слышали про страшный join, ну ничего, сейчас мы напишем код без каких-то понятных комментариев о том, как это работает, и вы сразу должны все понять"

    • @t0digital
      @t0digital  4 ปีที่แล้ว +12

      Честно - не знаю, как иначе для новичка рассказать про джоин. Он тупо соединяет данные разных таблиц, о чем и говорится в видео.

    • @onaker
      @onaker 4 ปีที่แล้ว +1

      @@t0digital Так про суть JOIN'а понятно, а про структуру запроса вообще нет.

    • @t0digital
      @t0digital  4 ปีที่แล้ว +2

      @@onaker сформулируйте вопрос - я отвечу

    • @onaker
      @onaker 4 ปีที่แล้ว +9

      @@t0digital Пытаюсь сформулировать - если бы еще немного рассказали про Alias и его использование, было бы вообще космос. А то про него упомянули при создании запроса, и поехали дальше делать запросы и я если честно, на этом моменте немного выпал из струи, хотя в целом видео смотрел в ускоренном формате.

    • @t0digital
      @t0digital  4 ปีที่แล้ว +21

      @@onaker alias это просто сокращенная версия названия таблицы или колонки, это никак не относится к join. Название таблиц бывает длинным, чтобы его везде в запросе не писать, используют алиас. Напр, select t.name from some_strange_mother_fuckers t;
      Это выберет колонку name из этой таблицы с длинным названием. Аналогично алиас можно задать подзапросу

  • @boomrail1064
    @boomrail1064 3 ปีที่แล้ว

    Огромное спасибо, это просто топ !

  • @user-zy6fx6yi4v
    @user-zy6fx6yi4v 2 ปีที่แล้ว

    Очень познавательно и довольно просто. Спасибо большое!

  • @rumyantsev_ilya
    @rumyantsev_ilya ปีที่แล้ว

    Круто!) Спасибо за материал

  • @rw_panic0_0
    @rw_panic0_0 3 ปีที่แล้ว

    Очень хорошо объяснил, спасибо!

  • @user-mz5rj4gc8v
    @user-mz5rj4gc8v 2 ปีที่แล้ว

    Спасибо! Помог разобраться! Очень благодарен, круто и понятно объяснил)

  • @AlinaOrynbayeva_
    @AlinaOrynbayeva_ 3 ปีที่แล้ว +1

    спасибо огромное))много чего поняла

  • @Someoneisdoingsomething
    @Someoneisdoingsomething 3 ปีที่แล้ว

    очень наглядные примеры, спасибо

  • @Genkay_777
    @Genkay_777 ปีที่แล้ว +2

    На моменте "заходим в бд" впал в ступор и пошел гуглить ))) думал будет хоть немного про установку , но тут материал не для ленивых)))

  • @user-hb3ex4kd6u
    @user-hb3ex4kd6u 3 ปีที่แล้ว +1

    Спасибо за урок ,лайк !

  • @afruzusmano2012
    @afruzusmano2012 4 ปีที่แล้ว +1

    Спасибо. Отлично обяснил. 👍

  • @wandos777
    @wandos777 2 ปีที่แล้ว

    Спасибо за видео, прям огонь)

  • @battleplace7364
    @battleplace7364 3 ปีที่แล้ว

    Отличное видео! Большое спасибо)))

  • @Vjidowkdkcpapqkfjfw
    @Vjidowkdkcpapqkfjfw ปีที่แล้ว

    Спасибо большое! Как всегда топ! Отдельное спасибо за отличия left и right join. Хотелось бы увидеть материал по нормализации, денормализации БД.

  • @user-iu6yz6ck6h
    @user-iu6yz6ck6h 4 ปีที่แล้ว

    Очень круто. Спасибо

  • @fumitox87
    @fumitox87 ปีที่แล้ว

    Спасибо большое за урок!

  • @rastsislaurudziankou2579
    @rastsislaurudziankou2579 3 ปีที่แล้ว

    Супер интересный ролик! Спасибо)

  • @user-do4nq3fr6t
    @user-do4nq3fr6t 3 ปีที่แล้ว

    Очень интересно, прям на пальцах объясняете! А то бишь доходчево!

  • @user-bg5fd7iy5x
    @user-bg5fd7iy5x 4 ปีที่แล้ว

    Спасибо! Приятно Вас слушать. Все доступно для новичка.

    • @t0digital
      @t0digital  4 ปีที่แล้ว

      Спасибооо!

  • @user-or5tf2dp3n
    @user-or5tf2dp3n ปีที่แล้ว

    Большое спасибо! Много важной информации на примерах.

    • @t0digital
      @t0digital  ปีที่แล้ว

      Рад, что полезно!

  • @8511a
    @8511a 4 ปีที่แล้ว

    настолько ёмко еще нигде не видел!! очень классно, нравится канал

    • @t0digital
      @t0digital  4 ปีที่แล้ว

      Спасибо, приятно! Будем продолжать

  • @konstantin9888
    @konstantin9888 4 ปีที่แล้ว +1

    Да, интересно было бы про постгрес ещё видео. Про кэширование и про масштабирование послушать

  • @ManDay220
    @ManDay220 3 ปีที่แล้ว

    Классно! Благодаря твоему видосу устроился на работу в IT компанию))

  • @user-my5nw2kg6l
    @user-my5nw2kg6l 3 ปีที่แล้ว

    Очень годный ролик, спасибо больше)

  • @user-cq4ui2tc9z
    @user-cq4ui2tc9z 3 ปีที่แล้ว

    Урок-огонь! Огромное спасибо автору! Подписываюсь и смотрю дальше.

    • @t0digital
      @t0digital  3 ปีที่แล้ว

      Спасибо, рад, что нравится:)!

  • @agirbova
    @agirbova 4 ปีที่แล้ว +2

    Добрый день, спасибо за видео. Вы очень доходчиво, доступно, понятно объясняете. Подача материала на высоте. Буду ждать Ваших следующих видео. Продолжайте, пожалуйста.. Удачи Вам.

    • @t0digital
      @t0digital  4 ปีที่แล้ว

      Будем продолжать обязательно. Спасибооо!

  • @user-sj4oy1el5y
    @user-sj4oy1el5y 3 ปีที่แล้ว

    Круто! Спасибо!

  • @Alex_Beck
    @Alex_Beck ปีที่แล้ว

    Хорошо получилось, спасибо!

  • @user-wm5kp9fy4n
    @user-wm5kp9fy4n 3 ปีที่แล้ว

    Спасибо, обновил университетские знания

  • @sergeydmitryenko3314
    @sergeydmitryenko3314 2 ปีที่แล้ว

    Оч. круто! Спасибо!