В поле full_name встречаются значения вроде 'Ivan' и 'ivan ' (с пробелом в конце). Нужно надёжно отфильтровать всех пользователей с именем «ivan» независимо от регистра и пробелов по краям. Какое условие подходит лучше всего?

Afull_name = 'ivan'
BTRIM(full_name) = 'Ivan'
CTRIM(LOWER(full_name)) = 'ivan'
DLOWER(full_name) = 'ivan'
Правильный ответ. Комбинация TRIM и LOWER делает сравнение устойчивым к лишним пробелам и разному регистру в текстовых данных.

Разбор

В реальных данных часто встречаются лишние пробелы и разные варианты регистра. Если сравнивать «как есть» через full_name = 'ivan', вы получите пропуски. Приведение к единому регистру через LOWER и удаление пробелов через TRIM дают стабильное условие. Только LOWER без TRIM пропустит значение 'ivan ', а TRIM без LOWER оставит 'Ivan' за рамками выборки.

Проверь себя · 1/3разбор после ответа
В поле phone хранится строка из 10 цифр, например 9991234567. Вам нужны первые 3 цифры (код региона) для группировки. Какое выражение подходит?
Тренировать SQL в Telegram

Ещё вопросы по теме «Строки и приведение типов»