Это введение в основы компьютерных наук, созданный профессором Гарвардского университета Дэвидом Маленки. Он охватывает ключевые концепции программирования и алгоритмов и является одним из самых популярных онлайн-курсов по программированию.
Ссылочка на плейлист: YouTube🖤
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥5🤝4❤1
This media is not supported in your browser
VIEW IN TELEGRAM
TutorialsPoint — это обширная платформа с уроками по множеству технологий, где курс по MySQL предлагает пошаговое руководство по основам работы с базами данных, написанию запросов и управлению данными.
📌 Оставляю ссылочку: tutorialspoint.com
➡️ SQL Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍4
Сегодня поговорим про два метода фильтрации выборки, в чем их разница и когда использовать нужный метод:
•
WHERE
— фильтрует строки на основе заданного условия. Работает перед агрегацией и предназначен для исключения неподходящих строк.•
HAVING
— фильтрует сгруппированные записи, работает с агрегатными функциями после WHERE
. Нужен именно для фильтрации групп, а не строк, как WHERE
.🔥 — если узнал новое
🤝 — если уже пользовался
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤝28🔥16👍6👎2
Media is too big
VIEW IN TELEGRAM
Репозиторий PostgreSQL Patterns Library!
Он идет с коллекцией шаблонов и практик для оптимизации запросов и работы с базами данных PostgreSQL, направленный на повышение производительности и упрощение разработки.
➡️ SQL Ready | #репозиторий
Он идет с коллекцией шаблонов и практик для оптимизации запросов и работы с базами данных PostgreSQL, направленный на повышение производительности и упрощение разработки.
Оставляю ссылочку: Github📱
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍3👎1
👍8🔥4😁2
Materialized Views — решение для сложных аналитических запросов!
Материализованные представления — это отдельная структура, скажем с данными о продажах за последний месяц, использование которой позволяет разгрузить основную таблицу и значительно ускорить сложные аналитические запросы.
Синтаксис создания представления:
Далее мы по сути пишем обычный запрос с учетом данных, которые нам понадобятся в нашем представлении:
Теперь выберем записи о продажах за последний месяц:
Из минусов materialized views — необходимость их постоянного обновления, иначе данные могут быть неактуальными:
➡ SQL Ready | #практика
Материализованные представления — это отдельная структура, скажем с данными о продажах за последний месяц, использование которой позволяет разгрузить основную таблицу и значительно ускорить сложные аналитические запросы.
Синтаксис создания представления:
CREATE MATERIALIZED VIEW daily_sales_summary AS
Далее мы по сути пишем обычный запрос с учетом данных, которые нам понадобятся в нашем представлении:
SELECT
DATE_TRUNC('day', order_date) AS sale_day,
SUM(amount) AS total_sales
FROM orders
Теперь выберем записи о продажах за последний месяц:
WHERE created_at > NOW - INTERVAL '30 days'
DATE_TRUNC
используем для округления момента продажи до дня, чтобы затем группировать продажи по дням:GROUP BY DATE_TRUNC('day', order_date);
Из минусов materialized views — необходимость их постоянного обновления, иначе данные могут быть неактуальными:
REFRESH MATERIALIZED VIEW daily_sales_summary;
Materialized views
физически сохраняются на диске и занимают место. Используйте этот инструмент, если ваши аналитические запросы действительно сложные и выполняются медленно. Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥4❤2
This media is not supported in your browser
VIEW IN TELEGRAM
SQL Murder Mystery — это интерактивная игра, в которой нужно использовать SQL-запросы для расследования виртуального убийства.
📌 Ссылочка: mystery.knightlab
➡️ SQL Ready | #ресурс
Игрокам предоставляется доступ к базе данных с информацией о преступлении, и они должны применять свои навыки работы с SQL для поиска улик, анализа данных и выявления преступника.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👍5
INSERT ON CONFLICT очень полезен в случаях, когда нужно вставить новую запись в таблицу, но если запись с таким же уникальным ключом уже существует — нужно обновить эту запись.
Следует использовать:
• Для сокращения запросов — когда вместо двух запросов (SELECT + INSERT/UPDATE) нужно выполнить только один.
• Для оптимизации — производительности и минимизации количества запросов к базе данных.
• Для конкурентный доступа — когда нужно избежать проблем с конкурентным доступом.
🔥 — если узнал новое
🤝 — если уже пользовался
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥25🤝10👍5👎2❤1
REGEXP — инструмент, который удобно использовать, если требуется сложный и гибкий поиск по шаблону. Например, поиск по нескольким условиям или использование специальных символов и диапазонов.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥25👍10❤6🤝1