This media is not supported in your browser
VIEW IN TELEGRAM
sql-academy — сайт, на котором вы получите фундаментальные знания для работы с базами данных. На платформе есть теоретический материал, который дополняется интерактивными тестами.
📌 Ссылочка: sql-academy.org
➡️ SQL Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥2
Подзапросы — мощный инструмент SQL, позволяющий включать результаты одного запроса в другой, что делает анализ данных гибким и производительным.
1. Вложенные подзапросы: когда один запрос внутри другого Чтобы отфильтровать пользователей, у которых баланс выше среднего, используем подзапрос:
SELECT user_id, balance
FROM users
WHERE balance > (SELECT AVG(balance) FROM users);
2. Коррелированные подзапросы: доступ к внешним данным, коррелированный подзапрос связан с внешним запросом и работает для каждой строки:
SELECT name
FROM employees e1
WHERE salary > (SELECT AVG(salary) FROM employees e2 WHERE e1.department = e2.department);
3. Подзапросы с оператором EXISTS: проверка наличия данных EXISTS часто используется, чтобы проверить наличие связанных данных:
SELECT customer_name
FROM customers c
WHERE EXISTS (SELECT 1 FROM orders o WHERE o.customer_id = c.customer_id);
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥1
Агрегатные функции в SQL позволяют выполнять вычисления на наборе значений и возвращать одно значение, что полезно для анализа данных и создания отчетов.
Основные агрегатные функции:
• COUNT — подсчитывает количество строк в наборе данных.
• SUM — вычисляет сумму значений в указанном столбце.
• AVG — вычисляет среднее значение в указанном столбце.
• MAX и MIN — возвращают максимальное и минимальное значение в столбце соответственно.
🔥 — если узнал новое
🤝 — если уже пользовался
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8🤝4👍2
#новичкам
Когда выполняется запрос, например, на выборку всех данных из таблицы, это может занять много времени, если данных слишком много.
Но вот используя LIMIT, можно ограничить количество возвращаемых строк. Запрос ниже вернет только 5 строк из таблицы, а не все данные:
SELECT * FROM таблица LIMIT 5;
Покажу вам ещё один пример использования, где вернется только первые 10 имен сотрудников, чтобы стало понятнее:
SELECT name FROM Employees LIMIT 10;
🔥 Поэтому, всегда ограничивайте выборку с помощью LIMIT, если не нужно извлекать все строки — это ускоряет выполнение запросов.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍3
📖 MySQL по максимуму
⬇️ Cкачать книгу
➡️ SQL Ready | #книга
В книге рассказывается о постановке целей уровня обслуживания, проектировании схем, индексов, запросов, а также о настройке сервера, операционной системы и оборудования
Автор: Ботрос Сильвия, Тинли Джереми
Год: 2023
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍1
animation.gif
16.2 MB
Делюсь интересным сайтом — CodeLibs 😎
Там есть множество полезных материалов по программированию, включая статьи, справочники, и примеры кода.
📌 Ссылочка: codelibs.ru
➡️ SQL Ready | #ресурс
Там есть множество полезных материалов по программированию, включая статьи, справочники, и примеры кода.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥5
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🤝4
This media is not supported in your browser
VIEW IN TELEGRAM
SQL Zoo — это интерактивный учебник, который позволяет практиковаться в написании SQL-запросов прямо в браузере.
📌 Ссылочка: sqlzoo.net
➡️ SQL Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2
Иногда в сложных запросах нужно временно сохранить данные для последующей обработки. В SQL используют временные таблицы. Их мы сегодня и рассмотрим
Временные таблицы создаются с помощью команды
CREATE TEMPORARY TABLE
. Например, если вы хотите сохранить заказы с суммой больше 100:CREATE TEMPORARY TABLE TempOrders AS
SELECT * FROM Orders WHERE TotalAmount > 100;
Дам вам ещё один пример, представьте, что вам нужно подсчитать, сколько каждый клиент потратил в вашем магазине. С временной таблицей это будет выглядеть так:
SELECT t.CustomerID, SUM(t.TotalAmount) AS TotalSpent
FROM TempOrders t
JOIN Customers c ON t.CustomerID = c.ID
GROUP BY t.CustomerID;
Ещё для ускорения работы можно создавать индексы на временные таблицы, примерно так:
CREATE INDEX idx_customer ON TempOrders (CustomerID);
🔥 Важно, что эти таблицы существуют только в рамках текущей сессии. Когда сессия завершается, таблица исчезает.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥3
Подзапросы в SQL — это запросы, вложенные в основной запрос, которые позволяют выполнять выборку или фильтрацию данных на основе результатов других запросов.
Виды подзапросов:
• Подзапросы в SELECT — позволяют возвращать данные на основе результатов другого запроса.
• Подзапросы в WHERE — используются для фильтрации данных, основываясь на значениях, возвращаемых другим запросом.
🔥 — если узнал новое
🤝 — если уже пользовался
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥1🤝1