#12. Оконные функции в SQL (Аналитические функции)

Поділитися
Вставка
  • Опубліковано 14 чер 2024
  • На прошедших двух уроках мы познакомились с агрегатными и ранжирующими оконными функциями. Продолжаем тему оконных функций и разговор сегодня пойдет об аналитических оконных функциях.
    Тайм-коды в видео:
    00:00​ Начало
    00:45 Функция FIRST_VALUE
    01:50 Функция LAST_VALUE
    04:10 Функция NTH_VALUE
    06:53 Функция LAG
    09:10 Функция LEAD
    09:48 Функция RATIO_TO_REPORT
    11:22 Заключение
    Команды SQL, упоминаемые в видео, доступны по ссылке: pastebin.com/nG9fc9Ww
    Предложить новую тему для видео: vdsr7ufo2in.typeform.com/to/H...
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Также напоминаю. В рамках данного курса действует группа в Телеграм, в которой я в режиме онлайн отвечаю на все вопросы участников, помогаю по ходу обучения.
    Вход в группу свободный, по ссылке приглашению (указана ниже). Ограничений по количеству участников на данный момент нет.
    В указанной группе задавайте абсолютно любые вопросы, в рамках нашего обучения. Посмотрели видео, попробовали повторить. Получилось - отлично. Что-то не вышло, пишите вопрос в группу. Всем отвечу и помогу.
    Ссылка на группу в Telegram: t.me/joinchat/LlHDMBmN0SAxM5_...
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ★ Дорогие друзья! Если вам нравится, что я делаю, и вы хотите поддержать проект материально, ссылка: www.donationalerts.com/r/exce...
    ★ Давайте дружить:
    Facebook | / excelstore.pro
    Вконтакте | ExcelStore
    Telegramm | t.me/ExcelStore
    #ОбучениеSQL #КурсыSQL #УрокиSQL #КухарьМаксим #ExcelStore

КОМЕНТАРІ • 25

  • @ExcelStore
    @ExcelStore  2 роки тому +1

    Если будут какие-либо вопросы по обучению SQL:
    1. Под видео ссылка на нашу группу в Телеграм, где вы всегда можете задать интересующие вас вопросы.
    2. Ссылка на Базовый курс SQL: ua-cam.com/play/PLKl9v2TQvIkq4i_hZwZ1PmobxJSkIGwBf.html

  • @kudman01
    @kudman01 2 роки тому +14

    Самое доходчивое и адекватное объяснение оконных функций на просторах инета, да еще грамотной и приятной речью! Спасибо.

    • @ExcelStore
      @ExcelStore  2 роки тому +1

      Спасибо большое за отзыв. Будут вопросы, пишите.

  • @ealbitg1043
    @ealbitg1043 2 роки тому +10

    Ну наконец-то появился кто-то рассказывающий про более сложные функции

  • @user-xm8sj7uc3i
    @user-xm8sj7uc3i Рік тому +1

    Гений!! Спасибо огромное!

  • @MakeYouWorkEasy
    @MakeYouWorkEasy 2 роки тому +5

    Спасибо за подробное описание функций. Очень хорошо результаты работы функций проиллюстрированы в примерах в эксель.

    • @ExcelStore
      @ExcelStore  2 роки тому

      Спасибо за отзыв!

  • @Igor-vb1hv
    @Igor-vb1hv 2 роки тому +9

    Уроки просто огонь! Было бы здорово, если бы выходили почаще

    • @ExcelStore
      @ExcelStore  2 роки тому +2

      Спасибо, Игорь.
      Постараюсь выпускать как минимум раз в неделю.

  • @kseshagold1564
    @kseshagold1564 2 роки тому +6

    Шикарно! очень кстати. Спасибо!

    • @ExcelStore
      @ExcelStore  2 роки тому +1

      Ксения, спасибо за отзыв. По оконным функциям тут целый блок из 4 видео. Интересная и полезная тема.

  • @user-hy7iw1uq2m
    @user-hy7iw1uq2m Рік тому +2

    Спасибо, очень помогли

  • @diz996
    @diz996 Рік тому +1

    Аналитические функции прикольно, но реализация NTH функции осуществляется с помощью LIMIT. И такой код возможно будет легче читаться. Автор очень хорошо раскрывает тему.

  • @Calmasastone
    @Calmasastone Рік тому +1

    Спасибо за видео! Виден свет в конце тоннеля :)
    Пока что трудно представить, когда можно использовать LAG + LEAD, но остальные возьму на вооружение

    • @ExcelStore
      @ExcelStore  Рік тому +1

      Без реальной практики сложно представить, но таких задач на самом деле довольно-таки много может быть.

    • @Calmasastone
      @Calmasastone Рік тому

      @@ExcelStore несомненно. Нахожусь в поиске работы уже месяц, уверен, буду возвращаться к этим видео, тк они очень полезные :)

  • @DMITRIYGeorgia
    @DMITRIYGeorgia 9 місяців тому

    спасибо

  • @LuciqueIl
    @LuciqueIl 7 місяців тому

    Разве фрейм по умолчанию не "RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW"?

  • @user-wh1rj4yw3p
    @user-wh1rj4yw3p Рік тому

    Здравствуйте! Большое спасибо за видеоуроки. У меня к сожалению не работает ratio_to_report, подчеркивает OVER и ругается про ошибку в синтексесе. Не знаете с чем может быть связано?( Хотелось бы использовать фун-цию, тк может быть весьма полезной в дальнейшем...

    • @ExcelStore
      @ExcelStore  Рік тому

      Здравствуйте. В группе, на сколько видел, вы уже получили ответ. Дублирую ответ:
      "Оракл воркбенч это интерфейс к базе данных mysql, в которой не поддерживается данная функция."

  • @roolbool
    @roolbool Рік тому

    1. Под видео ссылка на нашу группу в Телеграм, где вы всегда можете задать интересующие вас вопросы. --- где сама ссылка на телеграм? в самом канале тоже ссылки нету

    • @ExcelStore
      @ExcelStore  Рік тому

      Извините, не сразу заметил ваш комментарий.
      Ссылка на группу: t.me/sql_beginner

  • @Vic7bd
    @Vic7bd 2 місяці тому

    Жуть, это целые тексты какие то, а не команды )

  • @Artem1s-_-
    @Artem1s-_- Рік тому

    Аналитические оконные функции SQL:
    1)FIRST_VALUE - ТОП-1
    SELECT FIRST_VALUE(FIRST_NAME) OVER (PARTITION BY JOB_ID ORDER BY SALARY DESC) AS H_P_E FROM EMPLYEES - ВОЗВРАЩАЕТ ТОП-1 СОТРУДНИКА ПО ЗП
    2)LAST_VALUE - ТОП-1 С КОНЦА
    SELECT LAST_VALUE(FIRST_NAME) OVER (PARTITION BY JOB_ID ORDER BY SALARY DESC ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING) AS L_P_E FROM EMPLOYEES - ВОЗВРАЩАЕТ ТОП-1 НИЗКООПЛАЧИВАЕМОГО СОТРУДНИКА ПО ЗП
    3)NTH_VALUE - ТОП N-НЫЙ
    SELECT NTH_VALUE(FIRST_NAME || ' ' || LAST NAME,2 ) OVER (PARTITION BY JOB_ID ORDER BY SALARY DESC ) AS H_P_E FROM EMPLOYEES - ВОЗВРАЩАЕТ ТОП-2ND СОТРУДНИКА ПО ЗП
    4)LAG - ПРЕДЫДУЩАЯ N-НАЯ СТРОКА В ОКНЕ + ВМЕСТО NULL 'LLUN'
    SELECT LAG(FIRST_NAME,2,'LUNN' ) OVER (PARTITION BY JOB_ID ORDER BY SALARY DESC ) AS H_P_E FROM EMPLOYEES - ВОЗВРАЩАЕТ СОТРУДНИКА, ПРЕД-ПРЕДЫДУЩЕГО ЗА ТОП-1 ПО ЗП
    5)LEAD - СЛЕДУЮЩАЯ N-НАЯ СТРОКА В ОКНЕ+ ВМЕСТО NULL 'LLUN'
    SELECT LEAD(FIRST_NAME,2 ) OVER (PARTITION BY JOB_ID ORDER BY SALARY ASC) AS H_P_E FROM EMPLOYEES - ВОЗВРАЩАЕТ СОТРУДНИКА, СЛЕДУЮЩЕГО 2-ГО СОТРУДНИКА ЗА ТОП-1 НИЗКООПЛАЧИВАЕМЫМ ПО ЗП
    6)RATIO_TO_REPORT - ВЕС (ДОЛЯ) СТРОКИ В ОКНЕ
    SELECT FIRST_NAME,LAST_NAME, RATIO_TO_REPORT(SALARY ) OVER () AS RATIO_SALARY FROM EMPLOYEES - ДОЛЯ ЗП ПО СОТРУДНИКАМ