← Все вопросы

Как отфильтровать строки в SQL через WHERE? (=, >, <)

Задан 10 месяцев назад826 просмотров2 ответа
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 во многих базах даст ошибку.

Ваш ответ

Войдите, чтобы ответить на вопрос.