Перейти к содержимому
Nexus

SQL

Хранитель данных

Запросы к PostgreSQL: выборки и фильтры, агрегаты, соединения, подзапросы, изменение данных и свои таблицы.

Уровень
0 из 100
Ранг
Новичок
Опыт
0
Активные навыки
0 из 52

Способности

  • Вопросы к данным0 из 12 навыков
  • Агрегаты0 из 4 навыка
  • Соединения0 из 6 навыков
  • Подзапросы0 из 6 навыков
  • Изменение данных0 из 6 навыков
  • Проектирование0 из 5 навыков
  • Аналитика0 из 4 навыка
  • Скорость0 из 3 навыка

Подтвердить: База данных и таблицы

К уроку

Навыки

Старт SQL

Активно 0 из 5
Сцена
  1. СлонТише. Здесь Архив. Всё, что город когда-либо записал.
  2. СлонБаг перемешал полки, и теперь никто ничего не может найти. Данные не потерялись — потерялись вопросы.
  3. СлонНаучу тебя спрашивать. `SELECT`, `FROM`. Медленно и точно.

Фильтры

Закрыта: 5 навыков
Сцена
  1. СлонПопросишь всё — получишь всё. Миллион папок на голову.
  2. Баг`SELECT *` — и пусть сами ищут!
  3. СлонСначала `WHERE`. И помни про `NULL` — это не ноль и не пустота. Это «неизвестно».
  • WHEREЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • Логические операторыЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • IN и BETWEENЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • Поиск по шаблонуЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • NULLЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить

Сортировка и порции

Закрыта: 2 навыка
Сцена
  1. СлонОтвет верный, но в беспорядке и сразу весь. Людям нужно по порядку и по страницам.
  • ORDER BYЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • LIMIT и OFFSETЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить

Функции и выражения

Закрыта: 6 навыков
Сцена
  1. СлонДаты записаны как попало, имена — в разном регистре. Баг постарался.
  2. СлонФункции приведут всё к виду, в котором можно работать.
  • Математические функцииЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • Строковые функцииЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • CASEЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • COALESCE и NULLIFЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • Даты и времяЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • Типы и приведениеЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить

Агрегаты и группы

Закрыта: 4 навыка
Сцена
  1. СлонГороду нужны итоги: сколько, в среднем, по районам. Не список — сводка.
  • Агрегатные функцииЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • GROUP BYЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • HAVINGЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • Продвинутые агрегатыЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить

Соединения таблиц

Закрыта: 6 навыков
Сцена
  1. СлонЖители — в одной таблице, адреса — в другой. Баг порвал все связи.
  2. СлонКлючи связывают таблицы. `JOIN` их соединяет. Без потерь и без дублей.
  • Ключи и связиЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • INNER JOINЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • LEFT JOINЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • Виды соединенийЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • Self joinЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • Цепочка JOINЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить

Подзапросы и множества

Закрыта: 6 навыков
Сцена
  1. СлонСложные вопросы — это вопросы внутри вопросов. Не бойся вложенности, бойся путаницы.
  • ПодзапросыЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • EXISTSЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • Производные и коррелированные подзапросыЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • WITHЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • Операции над множествамиЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • Рекурсивные запросыЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить

Изменение данных

Закрыта: 6 навыков
Сцена
  1. СлонЗдесь мы меняем записи. Это необратимо. Почти.
  2. Баг`DELETE FROM residents;` — и порядок!
  3. СлонВот так Баг однажды стёр целую улицу. Транзакции, `RETURNING`, условия. Всегда.
  • INSERTЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • UPDATEЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • DELETEЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • RETURNINGЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • ON CONFLICTЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • ТранзакцииЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить

Свои таблицы

Закрыта: 5 навыков
Сцена
  1. СлонНовым районам нужны новые полки. Спроектируем их так, чтобы в них нельзя было записать ерунду.
  • CREATE TABLEЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • ОграниченияЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • FOREIGN KEYЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • ALTER TABLEЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • НормализацияЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить

Аналитика

Закрыта: 4 навыка
Сцена
  1. НикаГород хочет знать, как он восстанавливается. По дням, с накопительным итогом.
  2. СлонОконные функции. Смотрим на каждую строку, не теряя всей картины.
  • Оконные функцииЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • Накопительные итогиЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • ПредставленияЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • JSONЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить

Скорость и безопасность

Закрыта: 3 навыка
Сцена и бой с Багом
  1. СлонПоследний зал. Здесь Баг пытается пролезть в Архив через запросы, склеенные из строк.

Бой с Багом — финальная работа ветки

  1. Баг`' OR 1=1 --` Тук-тук!
  2. СлонПараметры, а не склейка. Дверь закрыта. Собери итоговый отчёт — быстро и безопасно.
  • ИндексыЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • Безопасность запросовЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить
  • Итоговый отчётЗакрыт: сначала подтвердите навыки, на которых он стоитИзучить