5. Пишемо SELECT, додаємо функції, агрегації та CASE WHEN | SQL для дата-аналітиків українською

  Рет қаралды 2,434

Нікіта Тимошенко [ Аналіз даних українською ]

Нікіта Тимошенко [ Аналіз даних українською ]

10 ай бұрын

🔥 Друзі, повний безкоштовний курс по SQL вже доступний на каналі - • ПОВНИЙ ПРАКТИЧНИЙ КУРС...
Після того, як ми познайомились з основними блоками запитів SQL, я пропоную детальніше дослідити кожен, починаючи з першого - SELECT. І головне - не забуваємо практикуватися!
----------
🎁 Якщо такі матеріали для вас корисні і ви хочете підтримати мою діяльність, нижче додаю реквізити моно банки. Всі донати подвоюю і відправляю щомісяця на потреби ЗСУ. ❤ ДЯКУЮ ВСІМ ЗА ПІДТРИМКУ!!!
🔗Посилання на банку: send.monobank.ua/jar/3uVeAbCMjA
💳Номер картки банки: 5375 4112 1233 7740
----------
Більше матеріалів 👇
_______
💻 Код з відео доступний за посиланням:
github.com/NickTimosh/sql_pra...
_______
✨Практичні завдання для закріплення матеріалу:
1. Вивести кількість унікальних значень для кожної колонки, що містить текстові значення.
2. Вивести унікальні значення для кожної колонки, що містить текстові значення. (SELECT DISTINCT column_name FROM salaries)
3. Вивести середню, мінімальну та максимальну з/п (salary_in_usd) для кожного року (окремими запитами, в кожному з яких впроваджено фільтр відповідного року)
4. Вивести середню з/п (salary_in_usd) для 2023 року по кожному рівню досвіду працівників (окремими запитами, в кожному з яких впроваджено фільтр року та досвіду).
5. Вивести 5 найвищих заробітних плат в 2023 році для представників спеціальності ML Engineer. Заробітні плати перевести в гривні.
6. Вивести Унікальні значення колонки remote_ratio, формат даних має бути дробовим з двома знаками після коми, приклад: значення 50 має відображатись в форматі 0.50
7. Вивести дані таблиці, додавши колонку 'exp_level_full' з повною назвою рівнів досвіду працівників відповідно до колонки exp_level. Визначення: Entry-level (EN), Mid-level (MI), Senior-level (SE), Executive-level (EX)
8. Додатки колонку "salary_category', яка буде відображати різні категорії заробітних плат відповідно до їх значення в колонці 'salary_in_usd'. Визначення: з/п менша за 20 000 - Категорія 1, з/п менша за 50 000 - Категорія 2, з/п менша за 100 000 - Категорія 3, з/п більша за 100 000 - Категорія 4
9. Дослідити всі колонки на наявність відсутніх значень, порівнявши кількість рядків таблиці з кількістю значень відповідної колонки
10. Порахувати кількість працівників в таблиці, які в 2023 році працюють на компанії розміру "М" і отримують з/п вищу за $100 000
________
Наснаги!

Пікірлер: 38
@Serhii_Krasovskyi
@Serhii_Krasovskyi Ай бұрын
Як завжди все лаконічно, зрозуміло і доступно. Дякую!
@BlakeLively255
@BlakeLively255 25 күн бұрын
Дякую за цікаві відео
@Vivi_can
@Vivi_can 2 ай бұрын
ДЯКУЮ💜
@olefiryschka
@olefiryschka 3 ай бұрын
СУПЕРM♥♥♥
@yegor2807
@yegor2807 10 ай бұрын
Select best course From all sql courses
@user-fj4jy7qq8n
@user-fj4jy7qq8n 5 ай бұрын
Дякую! У вас дуже гарно виходить викладати матеріал, все доступно і зрозуміло. Успіхів вам, в вашій не легкій справі!
@ion_lab
@ion_lab 5 ай бұрын
Вітаю і дякую за відгук, мені це дуже приємно) Успіхів у навчанні!
@user-jr1rv5cx5f
@user-jr1rv5cx5f 10 ай бұрын
ОООО....новий відосік! Хутко до перегляду.
@aad-sk5xu
@aad-sk5xu 10 ай бұрын
Дякую, дуже подобаються такі уроки, чекаю наступних)))
@Tenly_UK
@Tenly_UK 3 ай бұрын
Дякую!
@innatymoshenko4430
@innatymoshenko4430 10 ай бұрын
Дякую за ролик
@VladIhnatenko
@VladIhnatenko 10 ай бұрын
Супер, дякую ха урок. По тиху рухаюсь у вивченні)
@dmitriychernishov8760
@dmitriychernishov8760 10 ай бұрын
Вподобайка + комент за нові знання
@kolt-levry
@kolt-levry 3 ай бұрын
Вау як круто, скільки корисної інформації. Дуже дякую!
@ion_lab
@ion_lab 3 ай бұрын
Вас не зупинити) Але я все ж таки запрошую до повного курсу, бо там багато доповнень і додаткових матеріалів) kzbin.info/www/bejne/fpy3kImor8eLkLM
@prostyj_hlopaka
@prostyj_hlopaka 10 ай бұрын
Вподобайка
@vv.5878
@vv.5878 9 ай бұрын
👍
@user-li3ky1cc2b
@user-li3ky1cc2b 10 ай бұрын
👍👍👍👍
@K-yc9by
@K-yc9by 10 ай бұрын
Дякую! Цікавлять інші ресурси для тренувань - не підкажете? Також не знайшов можливості змінити тему програми на темну і збільшити шрифт коду. Ще раз дякую за уроки!
@user-my9xg8ri6p
@user-my9xg8ri6p 10 ай бұрын
Дякую, очікувала на продовження! Підкажіть, чи буде у відкритому доступі код з вирішенням домашніх завдань?
@user-ro9ki9pn1c
@user-ro9ki9pn1c 9 ай бұрын
дивись на гітхаб в описі відео
@agony4181
@agony4181 3 ай бұрын
Чи є сенс шукати якись плагін або щось в налаштуваннях щоб ключови слова скл кода самі по собі ставали у вергій регістр?
@ion_lab
@ion_lab 3 ай бұрын
Вітаю) Якщо ви працюєте зараз в pgAdmin - там є функціонал форматування коду. Спробуйте shift+Ctrl+k)
@agony4181
@agony4181 3 ай бұрын
@@ion_lab Дяка)
@user-tj1zf2fu7y
@user-tj1zf2fu7y 2 ай бұрын
Добрий день. Не зрозуміла, для чого в 10му завданні у відповідях в рядку там де WHERE вказано 1=1. Адже якщо прибрати 1=1, то вертається такий самий результат. За що відповідає 1=1?
@ion_lab
@ion_lab 2 ай бұрын
Добрий день) Пропустили цей момент, ми про це говорили) Дивіться, 1=1 повертає True. Це жодним чином не змінює запит, не впливає взагалі ні на що. Але такий трюк використовується для форматування коду. Адже тепер Кожна умова фільтру в блоці Where починається зі службового слова (AND або OR). Тепер, наприклад, якщо ви вирішите прибрати перший фільтр в коментарі - ва не потрібно буде змінювати другий фільтр. Ось тут можна побачити детальніше: pushmetrics.io/blog/why-use-where-1-1-in-sql-queries-exploring-the-surprising-benefits-of-a-seemingly-redundant-clause/
@user-pr2eo2xx3t
@user-pr2eo2xx3t 2 ай бұрын
Дякую!​@@ion_lab
@agony4181
@agony4181 3 ай бұрын
Хтось догуглився як виводити лише текстові колонки? Найбліще що знашов SELECT * FROM salaries WHERE column_type='text'; або SELECT * FROM salaries WHERE data_type='text'; оба викидають ERROR: column "column_type" does not exist
@ion_lab
@ion_lab 3 ай бұрын
Добрий день) Блок FROM - це джерело інформації, і нам не повернуться жодні дані, які фізично не належать джерелу. В даному випадку ми можемо повернути лише колонки таблиці. Але ми також маємо інформаційне джерело по нашій базі даних, і звідти можна запитати назви стовпчиків та типи даних. Спробуйте: SELECT column_name, data_type FROM information_schema.columns WHERE table_name = 'your_table_name' AND data_type = 'text'; Скажіть, чи вам цікаво було б пройти повний курс? Відео вже доступне на каналі, посилання і в описі під цим відео)
@agony4181
@agony4181 3 ай бұрын
@@ion_lab я так понял що фільтрувати їх за типом даних я навчуся у наступних уроках а поки що роблю це мануально?
@ion_lab
@ion_lab 3 ай бұрын
@@agony4181 Не зовсім так, ми не фільтруємо таблиці за типами даних - в цьому зазвичай не має потреби. Чи у вас є приклад необхідності такої дії?
@agony4181
@agony4181 3 ай бұрын
@@ion_lab я про ваші задачі у описі 1. Вивести кількість унікальних значень для кожної колонки, що містить текстові значення. Як я маю відфільтрувати колонки із нетекстовими значеннями?
@user-pi3cl9mv5k
@user-pi3cl9mv5k 3 ай бұрын
@@ion_lab Ви напевно мали на увазі вивести унікальні значення для кожної колонки окремими запитами бо одночасно не виходить(значення по рядах будуть унікальні а по колонках - ні!!!). І тип даних ми не перевіряємо а просто переглядаємо попередньо у якій колонці текст і вказуємо вручну. Поясніть 2 задачу б будь ласка
@pakhomovoleg
@pakhomovoleg 7 ай бұрын
дякую за урок. Завдання 6 довелося питати в chatGPT бо ROUND(remote_ratio / 100, 2) видавав тільки 2 значення (0 і 1). Якщо ROUND(remote_ratio / 100.0, 2) то відповідь буде на 3 значення (0, 0.50 і 1) подивився відповіді і вказання where 1=1 це же геніально! дозволяє потім вставляти будь яку умову не переписуючи запит!
@ion_lab
@ion_lab 7 ай бұрын
Дякую за комент! Десь в межах практикуму говорили про проблему ROUND(remote_ratio / 100, 2). Але напевно потрібно ще буде зробити акцент на типах даних. Ще раз дякую за актуальні підказки та поширення власного досвіду!
@Vivi_can
@Vivi_can 2 ай бұрын
Я використала: SELECT DISTINCT remote_retio * 0.01 Коли вже звірялась з відповідями, спробувала через ROUND(remote_ratio/100.0,2) та мені видає помилки
6. ТОП 10 задач SQL для СПІВБЕСІДИ - легкий рівень (sql практикум для дата-аналітиків)
16:01
Нікіта Тимошенко [ Аналіз даних українською ]
Рет қаралды 2,8 М.
Оператор CASE SQL. Примеры CASE WHEN
10:01
Database Programmer
Рет қаралды 10 М.
YouTube's Biggest Mistake..
00:34
Stokes Twins
Рет қаралды 71 МЛН
I PEELED OFF THE CARDBOARD WATERMELON!#asmr
00:56
HAYATAKU はやたく
Рет қаралды 34 МЛН
The World's Fastest Cleaners
00:35
MrBeast
Рет қаралды 157 МЛН
Did you find it?! 🤔✨✍️ #funnyart
00:11
Artistomg
Рет қаралды 112 МЛН
9. ТОП 5 задач SQL для співбесіди - вкладені запити
18:57
Нікіта Тимошенко [ Аналіз даних українською ]
Рет қаралды 2,4 М.
Пишемо найпопулярніші SQL запити в Google BigQuery
30:34
11 - ПОЯСНЕННЯ всіх типів JOINs (SQL практикум для дата аналітиків)
11:18
Нікіта Тимошенко [ Аналіз даних українською ]
Рет қаралды 946
Екскурсія в Tableau. Створюємо перший дашборд
38:30
#10. Оконные функции в SQL (Агрегатные оконные функции)
6:51
Максим Кухарь [Изучаем Excel, VBA, SQL]
Рет қаралды 40 М.
Чи вважають українці "простих росіян" винними у війні?
2:40
ГОВОРИТЬ ВЕЛИКИЙ ЛЬВІВ
Рет қаралды 205 М.
🔥ТОП 10 Безкоштовних ресурсів для вивчення Аналітики Даних
8:01
Нікіта Тимошенко [ Аналіз даних українською ]
Рет қаралды 2 М.
YouTube's Biggest Mistake..
00:34
Stokes Twins
Рет қаралды 71 МЛН