Когда речь идет об анализе данных, 🥰
❯ БЕСПЛАТНЫЙ курс по анализу данных
https://youtube.com/playlist?list=PLmejDGrsgFyCD25L2XEKESQEw8smsY6WO
❯ Excel
https://youtube.com/playlist?list=PLmejDGrsgFyCZ4YC5s8mgdQztj7zt5to5
❯ Power BI
https://youtube.com/playlist?list=PLmejDGrsgFyDMME3o2CamamZ8w9NxSWWo
❯ Python + SQL
https://youtube.com/playlist?list=PLmejDGrsgFyBczq04GElEwIgnPv94iQ2G
👉 @SQLPortal | #видео
❯ БЕСПЛАТНЫЙ курс по анализу данных
https://youtube.com/playlist?list=PLmejDGrsgFyCD25L2XEKESQEw8smsY6WO
❯ Excel
https://youtube.com/playlist?list=PLmejDGrsgFyCZ4YC5s8mgdQztj7zt5to5
❯ Power BI
https://youtube.com/playlist?list=PLmejDGrsgFyDMME3o2CamamZ8w9NxSWWo
❯ Python + SQL
https://youtube.com/playlist?list=PLmejDGrsgFyBczq04GElEwIgnPv94iQ2G
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥1
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
Преобразование строк в столбцы в Oracle SQL с помощью:
Этот оператор добавляет столбец для каждого значения из списка IN, используя результат функции fn.
Можно использовать несколько функций (fn), но каждую из них необходимо явно задавать с псевдонимом.
Все столбцы таблицы, не указанные в предложении PIVOT, автоматически становятся частью GROUP BY.
👉 @SQLPortal
PIVOT ( fn FOR col IN ( 'v1', 'v2', ... ) )
Этот оператор добавляет столбец для каждого значения из списка IN, используя результат функции fn.
Можно использовать несколько функций (fn), но каждую из них необходимо явно задавать с псевдонимом.
Все столбцы таблицы, не указанные в предложении PIVOT, автоматически становятся частью GROUP BY.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥1
SQL-собеседования ОБОЖАЮТ проверять вас на оконные функции.
Вот список из 7 самых популярных оконных функций:
7 самых часто проверяемых оконных функций👇
🟡 RANK() – присваивает ранг каждой строке в разделе на основе указанного столбца или значения.
🟡 DENSE_RANK() – присваивает ранг каждой строке, но не пропускает значения ранга.
🟡 ROW_NUMBER() – присваивает каждой строке уникальный порядковый номер в разделе на основе порядка строк.
🟡 LEAD() – извлекает значение из следующей строки в разделе на основе указанного столбца или выражения.
🟡 LAG() – извлекает значение из предыдущей строки в разделе на основе указанного столбца или выражения.
🟡 NTH_VALUE() – извлекает n-е значение в разделе.
👉 @SQLPortal
Вот список из 7 самых популярных оконных функций:
7 самых часто проверяемых оконных функций
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤4🔥4
Cвежие бесплатные книги по PostgreSQL от Postgres Professional — забирай, пока горячие 🙂
🔸 «Postgres: первое знакомство» – уже 11-е издание. Добавили новинки PostgreSQL 17, скоро будет английская версия
🔸 «PostgreSQL 17 изнутри» – обновленный разбор от Егора Рогова, добавлены изменения PostgreSQL 17 и тема про ресурсы при планировании запросов
Все обновлённые книги и ряд других — здесь
👉 @SQLPortal
Все обновлённые книги и ряд других — здесь
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤2
5 мифов о SQL. Что часто неправильно понимают новички
SQL — это мощный инструмент, но некоторые мифы о нем могут сбить с толку новичков.
Давайте разберем пять распространенных заблуждений и развеем их:👇
Миф 1: SQL — это только для извлечения данных.
✦ Реальность: Нет, это не так! SQL также может создавать, изменять и управлять базами данных, контролировать доступ и поддерживать консистентность данных.
✦ Как исправить: Изучите все возможности SQL, такие как DDL (для проектирования баз данных), DCL (для управления доступом) и TCL (для транзакций). SQL — это не только SELECT!
Миф 2: Использование SELECT * — это нормально.
✦ Реальность: Это может быть легко, но неэффективно. Извлечение всех колонок расходует память и замедляет производительность.
✦ Как исправить: Выбирайте только те колонки, которые вам действительно нужны. Это быстрее и чище. Не очень хорошо - SELECT * FROM employees; Лучше - SELECT employee_id, name, department FROM employees;
Миф 3: SQL не может обрабатывать сложный анализ данных.
✦ Реальность: SQL может делать гораздо больше, чем простые запросы! С такими концепциями, как оконные функции и CTE, вы можете обрабатывать действительно сложный анализ данных.
✦ Как исправить: Изучите продвинутые возможности SQL, такие как оконные функции (ROW_NUMBER(), RANK()) и CTE, чтобы улучшить свои навыки. Пример - Ранжирование сотрудников по зарплате в пределах их отдела
WITH ranked_salaries AS (SELECT employee_id, salary, department, ROW_NUMBER() OVER (PARTITION BY department ORDER BY salary DESC) AS rank FROM employees) SELECT * FROM ranked_salaries WHERE rank = 1;
Миф 4: Медленные запросы — всегда вина базы данных.
✦ Реальность: Обычно замедление происходит из-за неэффективных запросов. Причиной могут быть, например, отсутствующие индексы или неоптимизированный код.
✦ Как исправить: Правильно используйте индексы, избегайте сложных вычислений в условиях WHERE и проверяйте план выполнения запроса для выявления узких мест.
Миф 5: SQL устарел и скоро будет заменен.
✦ Реальность: SQL останется! Несмотря на рост популярности NoSQL, SQL по-прежнему является основой для структурированных данных.
✦ Как исправить: Следите за новыми тенденциями и исследуйте, как SQL интегрируется с платформами для больших данных и облачными базами данных. SQL актуален как никогда.
Не позволяйте этим мифам останавливать вас. SQL — это мощный инструмент, и когда вы освоите его в полной мере, вы сможете делать потрясающие вещи с вашими данными.❤️
👉 @SQLPortal
SQL — это мощный инструмент, но некоторые мифы о нем могут сбить с толку новичков.
Давайте разберем пять распространенных заблуждений и развеем их:
Миф 1: SQL — это только для извлечения данных.
✦ Реальность: Нет, это не так! SQL также может создавать, изменять и управлять базами данных, контролировать доступ и поддерживать консистентность данных.
✦ Как исправить: Изучите все возможности SQL, такие как DDL (для проектирования баз данных), DCL (для управления доступом) и TCL (для транзакций). SQL — это не только SELECT!
Миф 2: Использование SELECT * — это нормально.
✦ Реальность: Это может быть легко, но неэффективно. Извлечение всех колонок расходует память и замедляет производительность.
✦ Как исправить: Выбирайте только те колонки, которые вам действительно нужны. Это быстрее и чище. Не очень хорошо - SELECT * FROM employees; Лучше - SELECT employee_id, name, department FROM employees;
Миф 3: SQL не может обрабатывать сложный анализ данных.
✦ Реальность: SQL может делать гораздо больше, чем простые запросы! С такими концепциями, как оконные функции и CTE, вы можете обрабатывать действительно сложный анализ данных.
✦ Как исправить: Изучите продвинутые возможности SQL, такие как оконные функции (ROW_NUMBER(), RANK()) и CTE, чтобы улучшить свои навыки. Пример - Ранжирование сотрудников по зарплате в пределах их отдела
WITH ranked_salaries AS (SELECT employee_id, salary, department, ROW_NUMBER() OVER (PARTITION BY department ORDER BY salary DESC) AS rank FROM employees) SELECT * FROM ranked_salaries WHERE rank = 1;
Миф 4: Медленные запросы — всегда вина базы данных.
✦ Реальность: Обычно замедление происходит из-за неэффективных запросов. Причиной могут быть, например, отсутствующие индексы или неоптимизированный код.
✦ Как исправить: Правильно используйте индексы, избегайте сложных вычислений в условиях WHERE и проверяйте план выполнения запроса для выявления узких мест.
Миф 5: SQL устарел и скоро будет заменен.
✦ Реальность: SQL останется! Несмотря на рост популярности NoSQL, SQL по-прежнему является основой для структурированных данных.
✦ Как исправить: Следите за новыми тенденциями и исследуйте, как SQL интегрируется с платформами для больших данных и облачными базами данных. SQL актуален как никогда.
Не позволяйте этим мифам останавливать вас. SQL — это мощный инструмент, и когда вы освоите его в полной мере, вы сможете делать потрясающие вещи с вашими данными.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤8🤯1
Ограничьте количество строк, возвращаемых запросом Oracle SQL, с помощью
ORDER BY ... FETCH FIRST n ROWS ONLY
🔜 и запрос вернёт не более N строк.
Замените ONLY на WITH TIES, чтобы получить все строки с таким же значением сортировки, как у N-й строки.
Добавьте PERCENT, чтобы получить N% строк из результирующего набора.
👉 @SQLPortal
ORDER BY ... FETCH FIRST n ROWS ONLY
Замените ONLY на WITH TIES, чтобы получить все строки с таким же значением сортировки, как у N-й строки.
Добавьте PERCENT, чтобы получить N% строк из результирующего набора.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8👍5
Media is too big
VIEW IN TELEGRAM
Нашёл коллекцию 100+ SQL-скриптов
Они могут помочь в управлении базами данных, оптимизации запросов и выполнении различных операций с данными.
Сохраняй если хочешь улучшить свои навыки работы с SQL.👍
🔜 Ссылка
👉 @SQLPortal | #ресурсы |
Они могут помочь в управлении базами данных, оптимизации запросов и выполнении различных операций с данными.
Сохраняй если хочешь улучшить свои навыки работы с SQL.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
Когда-нибудь случайно удаляли таблицу? 👍
Oracle Database помещает её в корзину (recyclebin), так что вы можете восстановить её с помощью
и база данных восстановит её, включая индексы и (не внешние) ограничения.
Если хотите удалить её окончательно, используйте
👉 @SQLPortal
Oracle Database помещает её в корзину (recyclebin), так что вы можете восстановить её с помощью
FLASHBACK TABLE ... TO BEFORE DROP
и база данных восстановит её, включая индексы и (не внешние) ограничения.
Если хотите удалить её окончательно, используйте
DROP TABLE ... PURGE
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤8🔥6
Оператор CASE в SQL позволяет выполнять условные логические операции непосредственно в запросах. Это аналог конструкции if-else в языках программирования и полезен для создания вычисляемых столбцов и реализации сложной логики выборки данных.
Два варианта синтаксиса:
Используется для сравнения выражения с набором значений.
CASE выражение
WHEN значение1 THEN результат1
WHEN значение2 THEN результат2
ELSE результат_по_умолчанию
END
Используется для проверки условий.
CASE
WHEN условие1 THEN результат1
WHEN условие2 THEN результат2
ELSE результат_по_умолчанию
END
Примеры использования:
SELECT
product_name,
CASE category_id
WHEN 1 THEN 'Электроника'
WHEN 2 THEN 'Одежда'
WHEN 3 THEN 'Книги'
ELSE 'Другое'
END AS category_name
FROM products;
SELECT
employee_name,
salary,
CASE
WHEN salary >= 100000 THEN ' Высокий доход'
WHEN salary >= 50000 THEN 'Средний доход'
ELSE 'Низкий доход'
END AS income_level
FROM employees;
Важные замечания:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19❤3
Как выбрать тип базы данных?
Сегодня доступны сотни, а то и тысячи баз данных, такие как Oracle, MySQL, MariaDB, SQLite, PostgreSQL, Redis, ClickHouse, MongoDB, S3, Ceph и другие.
🟡 Реляционная база данных – практически любую задачу можно решить с ее помощью.
🟡 Хранилище в памяти – высокая скорость и ограниченный объем данных делают его идеальным для быстрых операций.
🟡 База данных временных рядов – хранит и управляет данными с временными метками.
🟡 Графовая база данных – подходит для сложных связей между неструктурированными объектами.
🟡 Документное хранилище – хорошо подходит для хранения больших неизменяемых данных.
🟡 Хранилище широких столбцов – обычно используется для работы с большими данными, аналитики, отчетности и других задач, требующих денормализованных данных.
Есть ли что-то, что вы часто используете, и почему выбираете именно это?🤔
👉 @SQLPortal
Сегодня доступны сотни, а то и тысячи баз данных, такие как Oracle, MySQL, MariaDB, SQLite, PostgreSQL, Redis, ClickHouse, MongoDB, S3, Ceph и другие.
Есть ли что-то, что вы часто используете, и почему выбираете именно это?
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥3❤2
INTERVAL в SQL
Используется для добавления или вычитания определенного количества времени (например, дней, месяцев, лет) из значения даты или времени.
Это позволяет легко выполнять операции с датами, например, вычислять сроки доставки, анализировать временные периоды или планировать события.
В приведенном примере SQL-запроса order_date + INTERVAL '5 DAY' добавляет 5 дней к дате заказа, что упрощает обработку временных данных.
👉 @SQLPortal
Используется для добавления или вычитания определенного количества времени (например, дней, месяцев, лет) из значения даты или времени.
Это позволяет легко выполнять операции с датами, например, вычислять сроки доставки, анализировать временные периоды или планировать события.
В приведенном примере SQL-запроса order_date + INTERVAL '5 DAY' добавляет 5 дней к дате заказа, что упрощает обработку временных данных.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤4
Media is too big
VIEW IN TELEGRAM
Представления
Видео рассказывает о представлениях (views) в SQL, их роли в упрощении запросов и уменьшении дублирования кода. Рассматриваются два типа представлений: нематериализованные, которые выполняются заново при каждом запросе, и материализованные, хранящие результаты в таблице для быстрого доступа.
📹 Cмотреть: тык
👉 @SQLPortal | #видео
Видео рассказывает о представлениях (views) в SQL, их роли в упрощении запросов и уменьшении дублирования кода. Рассматриваются два типа представлений: нематериализованные, которые выполняются заново при каждом запросе, и материализованные, хранящие результаты в таблице для быстрого доступа.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13