Уровень 2. Практика

Поділитися
Вставка
  • Опубліковано 2 гру 2024

КОМЕНТАРІ •

  • @victorguschenko3078
    @victorguschenko3078 3 роки тому +4

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

    • @datalearn4398
      @datalearn4398  3 роки тому

      Виктор, рад, что вам помогает

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

    Круто. Большое спасибо.

  • @alexeyshumakov7941
    @alexeyshumakov7941 2 роки тому +3

    В решении задачи о типах личности сотрудников, выбравших проекты, допущена неточность: типов личности с максимальным количеством два, ISTJ и ENFJ, но этого не видно из-за LIMIT 1. У меня при сортировке на первом месте стоит ENFJ.

  • @nikolay3639
    @nikolay3639 3 роки тому +3

    Супер, спасибо большое. Тест тоже интересный.

  • @nataindata
    @nataindata 3 роки тому +3

    cпасибо, очень интересные задачи

    • @datalearn4398
      @datalearn4398  3 роки тому +1

      Наталья, рад, что вам нравится

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

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

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

    В решении задачи о слушателях в январе и феврале допущена неточность: 191 слушатель не уникален, реально таких слушателей 39. Нужно либо добавить в решение DISTINCT либо просто использовать EXCEPT.

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

    Хорошая работа!

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

    Интересно Почему выводятся другое количество золота и серебра, если внутри СASE выше поставить выражение when medium ilike '%Silver% ???

  • @kerek__dunie
    @kerek__dunie 3 роки тому +1

    Здравствуйте. А во втором проекте про сельдерей, мы не можем задать команду WHERE category = 'celery'?

    • @datalearn4398
      @datalearn4398  3 роки тому +1

      Нургуль,запись WHERE category = 'celery' найдет нам только те значения, где содержится слово 'celery' в столбце category, если же окажется, что это слово является лишь частью названия категории, то у нас ничего не будет найдено, и нам лучше использовать оператор LIKE или ILIKE, то есть WHERE category ILIKE '%celery%';

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

    Спасибо большое за вашу работу!
    У меня есть небольшое предложение для оптимизации скачивания приложенных файлов. Было бы удобнее их скачивать одним архивом

  • @ЕленаР-е8п
    @ЕленаР-е8п 3 роки тому

    Добрый день! В предпоследней задаче, где мы искали тип личности, наиболее представленный сотрудниками, там два таких типа и 6 сотрудников. Как сделать, чтобы выводилась информация по обоим типам?

    • @brazilec_420
      @brazilec_420 3 роки тому +1

      WITH most_of_personality AS(
      -- Получаем выборку из 2-х personality ISTJ, ENFJ
      SELECT personality
      FROM vr_startup.employees
      WHERE current_project IS NOT NULL
      GROUP BY personality
      ORDER BY COUNT(personality) DESC
      LIMIT 2
      )
      SELECT e.first_name,
      e.last_name,
      e.personality,
      p.project_name
      FROM vr_startup.employees AS e
      JOIN vr_startup.projects AS p
      ON e.current_project = p.project_id
      --соединяем с таблицей vr_startup.employees
      JOIN most_of_personality as m_o_p
      ON m_o_p.personality = e.personality
      WHERE e.personality = m_o_p.personality
      ORDER BY e.personality ASC

    • @brazilec_420
      @brazilec_420 3 роки тому +1

      Может быть вот так))) но это не точно...я только попробовал

  • @АлексейГошко-ц7г

    У тебя ошибка при CASE - у тебя пользователи не активны даже при NULL. посмотри

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

    Спасибо большое за ценную практику! Помогите пжл разобраться с проблемой в решении задачи с со слушателями музыки в январе и феврале. Написал такой же код как в видео, но в итоге количество строк (слушателей в январе), вместо 191 получается 382. То есть в моей выборке "задваиваются" данные, выводятся два одинаковых списка ID юзеров друг за другом.
    Где у меня ошибка? Заранее спасибо!
    код к задаче:
    WITH January AS
    (SELECT
    *
    FROM
    songify.plays
    WHERE
    EXTRACT(MONTH FROM play_date ) =1),
    February AS
    (SELECT
    *
    FROM
    songify.plays
    WHERE
    EXTRACT(MONTH FROM play_date ) =2)
    SELECT
    j.user_id
    FROM
    January AS J
    left JOIN
    February AS F
    ON
    j.user_id=f.user_id
    WHERE
    f.user_id IS NULL

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

      Разобрался , у меня задваивались данные в таблице plays, видимо 2 раза добавил ее. Обновил табличку, теперь все верно. Но возник новый вопрос, как избежать ошибочного "двойного добавления" данных в таблицу при ее создании?