В таблице users нужно выбрать только активных пользователей из России или Казахстана. Какой WHERE соответствует требованию?

AWHERE is_active = 1 AND country = 'RU' OR country = 'KZ'
BWHERE is_active = 1 OR (country = 'RU' OR country = 'KZ')
CWHERE is_active = 1 AND (country = 'RU' OR country = 'KZ')
DWHERE is_active = 1 AND country = 'RU' AND country = 'KZ'
Правильный ответ. При смешивании AND и OR важно использовать скобки, чтобы зафиксировать нужную логику фильтрации.

Разбор

Запрос должен отобрать строки, где одновременно выполняются два условия: пользователь активен и страна входит в набор из двух значений. Поэтому правильно писать is_active = 1 AND (country = 'RU' OR country = 'KZ'). Без скобок выражение с AND и OR может трактоваться не так, как вы ожидаете, и начнёт пропускать, например, всех пользователей из 'KZ' независимо от активности.

Проверь себя · 1/3разбор после ответа
Вы делаете пагинацию так: SELECT product_id FROM products LIMIT 20 OFFSET 20. В чём главный риск такого подхода для аналитической витрины или интерфейса, если нет ORDER BY?
Тренировать SQL в Telegram

Ещё вопросы по теме «Основы SQL-запросов»