← Все вопросы
Как отфильтровать строки в SQL через WHERE? (=, >, <)
6
У меня запрос SELECT * FROM students; выводит вообще всех. А как показать только тех, у кого возраст больше 14? Или только ученика с именем «Аня»? Что-то слышал про WHERE, но не понял как.
2 ответа
11
✓ Принятый ответ — помог автору
Да, тебе нужен WHERE — это «где / при условии». Он отбирает только те строки, которые подходят под условие.
Только те, кому больше 14:
SELECT * FROM students WHERE age > 14;
Только Аня:
SELECT * FROM students WHERE name = 'Аня';
Обрати внимание:
- для сравнения используется один знак
=(не два, как в Python!); - текст пишется в одинарных кавычках:
'Аня'; - числа — без кавычек:
age > 14.
Ещё операторы: > больше, < меньше, >= больше или равно, <= меньше или равно, <> или != — не равно. WHERE ставится после FROM.
4
Маленькая, но частая ловушка: в SQL равенство — это один знак =, а не ==. Привычка из Python/JS тут подводит. WHERE age == 14 во многих базах даст ошибку.
Ваш ответ
Войдите, чтобы ответить на вопрос.