TGViewer
Channel Public Channel
SQL Ready | Базы Данных

SQL Ready | Базы Данных

@sql_ready

Авторский канал про Базы Данных и SQL
Ресурсы, гайды, задачи, шпаргалки.
Информация ежедневно пополняется!

Cотрудничество: @energy_c

РКН: https://clck.ru/3QREBc
Subscribers
17.5K
Photos
1.4K
Videos
114
Links
767

Showing posts older than #1027 · Back to latest

Older Posts 7 shown
Post #1025 2.15K
  • 👍 20
  • 🔥 9
  • 🤝 5
  • 👎 2
Post #1024 2.07K
  • 👍 10
  • 🔥 8
  • 🤝 5
  • ❤ 1
Post #1023 2.28K
👋🏼 Приветствую!

Ровно год назад я создал этот канал и не только (не важно что 12 июля, главное первый пост был 8 сентября 😁).

Спасибо всем кто подписан на мой склчик, особенно благодарю тех, кто ставит реакции.

🖥 За это время контент намного стал лучше, с таких постов, до таких как сейчас.

Но кстати всё равно, раньше тоже круто было, можете перейти в закреп и там посмотреть на старые постики.

В общем, поздравляю сам себя с годовщиной! 🥳
  • ❤ 32
  • 👍 20
  • 🔥 17
Post #1018 2.2K
🖥 Функции для работы с массивами!

В этой шпаргалке собраны 8 методов для сбора, развертывания, подсчёта и преобразования массивов и строк. Короткие примеры помогут быстро ориентироваться в аналитических запросах и готовить данные для отчётов, API или BI-инструментов.

➡️ SQL Ready | #шпора
  • ❤ 16
  • 👍 12
  • 🔥 7
  • 🤝 2
Post #1011 2.37K
🖥 Транзакции и блокировка строк!

При конкурентных изменениях данных важно исключить конфликты. Используем транзакции, блокировки строк и правильный уровень изоляции.

Создадим таблицу счетов:
CREATE TABLE Accounts (
id INT PRIMARY KEY,
name VARCHAR(50),
balance DECIMAL(10,2)
);


Начинаем транзакцию и блокируем строку:
SET TRANSACTION ISOLATION LEVEL REPEATABLE READ; -- защита от грязных чтений
BEGIN;

SELECT balance FROM Accounts
WHERE id = 1 FOR UPDATE; -- эксклюзивная блокировка строки


Выполняем перевод и фиксируем результат:
UPDATE Accounts SET balance = balance - 500 WHERE id = 1;
UPDATE Accounts SET balance = balance + 500 WHERE id = 2;
COMMIT; -- сохраняем изменения


Откат транзакции:
ROLLBACK; -- можно вызвать до COMMIT при ошибке


🔥 FOR UPDATE ставит row-level exclusive lock: другие транзакции ждут, пока вы завершите свою.

➡️ SQL Ready | #практика
  • 🔥 17
  • 👍 15
  • ❤ 9
Post #1006 2.96K
🖥 Накопительные итоги — running totals без циклов!

Хотите видеть, как растут продажи день за днём или отслеживать баланс по пользователям? С функциями SQL можно посчитать нарастающий итог прямо в одном запросе.

Сегодня в посте:
• Считаем общий running total по датам.

• Считаем накопительные суммы отдельно для каждого пользователя.

• Контролируем диапазон расчёта с ROWS BETWEEN.


Это делает SQL-запросы компактными, наглядными и готовыми к использованию в отчётах.

➡️ SQL Ready | #гайд
  • ❤ 19
  • 👍 10
  • 🔥 7
  • 🤝 3
Post #997 4.26K
🖥 Анализируем музыкальные тренды!

Хотим узнать, какие жанры и исполнители сейчас популярны, и в какие дни они слушаются чаще всего. Это помогает прогнозировать и подобрать рекомендации для плейлистов.

В этом посте:
• EXTRACT(DOW FROM play_time) — выделяем день недели прослушивания.

• EXTRACT(HOUR FROM play_time) — смотрим, в какие часы включают музыку.

• COUNT(*) + GROUP BY — считаем, сколько треков играло по жанрам и времени.

• ORDER BY — сортируем, чтобы увидеть пики популярности.


В итоге получаем SQL-инструмент для поиска «вирусных» жанров и артистов.

➡️ SQL Ready | #задача
  • 🔥 21
  • 👍 12
  • ❤ 5
  • 🤝 4
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →