Тест: докажите свои навыки SQL! Вы за SQL? Или за NoSQL?
Проверьте свои базовые навыки SQL‑запросов
Слишком полагаетесь на ORM и чувствуете упадок навыков?
Не переживайте, с этим сталкивается множество разработчиков.
Погрузитесь сразу и продемонстрируйте свои фундаментальные знания SQL‑запросов! 👇
Какой из следующих SQL‑запросов правильно извлекает строки, где имя равно “John”?
В SQL для проверки равенства в операторе WHERE используется один знак равенства (=), а не == или ===, которые являются операторами JavaScript.
Правильный синтаксис: SELECT * FROM users WHERE name = 'John';.
SELECT * FROM users WHERE name LIKE(John);
SELECT * FROM users WHERE name = 'John';
SELECT * FROM users WHERE name == "John";
SELECT * FROM users WHERE name === "John";
Что делает COUNT(column_name) в SQL?
COUNT(column_name) считает значения столбца, отличные от NULL. Число 0 тоже учитывается. COUNT(*) считает все строки.
COUNT(COALESCE(column_name, 0)) заменяет NULL на 0, поэтому учитывает и такие строки.
Считает все строки, включая NULL
Считает только значения столбца, отличные от NULL
Считает NULL как одно уникальное значение
Считает каждый NULL как уникальный, как NaN !== NaN
Что делает LEFT JOIN в SQL?
LEFT JOIN возвращает все строки из левой таблицы и совпадающие строки из правой таблицы, а для несовпадающих строк правой таблицы ставит NULL.
Возвращает одну строку для каждой совпадающей строки, игнорируя несовпадающие
Возвращает все строки из левой таблицы и совпадающие строки из правой
Возвращает все совпавшие и несовпавшие строки, где NULL указывает на отсутствие совпадения
Возвращает все строки из правой таблицы и любые совпадающие строки из левой
Что делает INNER JOIN в SQL?
INNER JOIN возвращает строки, где условие соединения совпадает в обеих таблицах. Несоответствующие строки не включаются в результирующий набор.
Возвращает несоответствующие строки из обеих таблиц
Возвращает все строки из обеих таблиц, с NULL для несоответствующих строк
Возвращает строки, удовлетворяющие условию соединения в обеих таблицах
Возвращает несоответствующие строки из правой таблицы
Что такое коррелированный подзапрос в SQL?
Коррелированный подзапрос ссылается на столбцы внешнего запроса. Это логическая зависимость; оптимизатор может преобразовать выполнение, поэтому физический запуск подзапроса отдельно для каждой строки не гарантирован.
Подзапрос, который выполняется один раз в целом
Подзапрос, используемый только в операторах JOIN
Подзапрос, который возвращает только несколько столбцов
Подзапрос, ссылающийся на столбцы внешнего запроса
Какова цель предложения WITH (Common Table Expression) в SQL?
WITH‑предложение, или Common Table Expression (CTE), используется для определения временного набора результатов, который можно ссылаться в основном запросе. В PostgreSQL WITH может быть прикреплён к таким операторам, как SELECT, INSERT, UPDATE, DELETE или MERGE.
Это помогает улучшить читаемость и поддерживаемость сложных запросов.
Синтаксис:
Разрешено только в операторах DELETE
Используется для агрегатных функций
Используется только для определения представлений
Определение временного набора результатов для использования в более крупном SQL‑запросе
Что делает оператор IS NULL в SQL?
IS NULL проверяет, содержит ли указанный столбец значение NULL. IS NOT NULL проверяет обратное.
Проверяет, является ли значение NULL
Проверяет, является ли значение пустым
Проверяет, является ли значение строкой
Проверяет, является ли значение числом
Что делает оператор IN в SQL?
Оператор IN выбирает строки, значение которых входит в указанный список. Он не устраняет дубликаты и не требует индекса.
Подходящий индекс B-tree может ускорить избирательный запрос, но уникальность индекса не нужна. Планировщик может предпочесть последовательное сканирование в зависимости от статистики и доли подходящих строк.
Возвращает уникальные строки
Требует индексированный столбец
Применяется только к числовым столбцам
Возвращает строки, соответствующие значениям в указанном списке
Что делает функция COALESCE в SQL?
COALESCE функция возвращает первое не‑NULL значение из указанного списка, что удобно для подстановки значений по умолчанию, когда встречаются NULL.
Например, COALESCE(column_name, 0) вернёт 0, если column_name равно NULL.
Считает NULL‑значения
Возвращает последний не‑NULL аргумент
Возвращает первый не‑NULL аргумент
Ограничено столбцами IDENTITY
Изначально из Printer Coalation
Какова цель использования конструкции GROUP BY в SQL?
Конструкция GROUP BY группирует строки, имеющие одинаковые значения в указанных столбцах, позволяя применять агрегатные функции к каждой группе.
Скрывает дубликаты
Используется только в соединениях
Сортирует строки по возрастанию
Группирует строки по указанным столбцам
Синтаксис должен быть GROUP WITH/USING
Что делает FULL OUTER JOIN в SQL?
FULL OUTER JOIN возвращает все строки из обеих таблиц, заполняя несоответствующие строки NULL для недостающих значений.
Это полезно для сравнения двух таблиц и поиска различий между ними.
Возвращает только совпадающие строки
Возвращает только строки с ненулевыми значениями
Возвращает только несоответствующие строки из левой таблицы
Возвращает только несоответствующие строки из правой таблицы
Возвращает все строки из обеих таблиц, заполняя NULL для несоответствующих строк