# Условия


## Фильтрация WHERE


`WHERE` фильтрует строки, выбирая только те, которые соответствуют условию.

Представим таблицу **animals**:

| id | name | species | emoji |
| --- | --- | --- | --- |
| 1 | Buddy | Dog | 🐶 |
| 2 | Whiskers | Cat | 🐱 |
| 3 | Leo | Lion | 🦁 |
| 4 | Rex | Dog | 🐕 |

### Выбрать всех собак (Dog):

```sql
SELECT emoji, name, species FROM animals WHERE species = 'Dog'
```

Результат (только собаки) 🐶:

```sql
🐶 Buddy Dog
🐕 Rex   Dog
```

### Выбрать животное по имени (Whiskers):

`SELECT * FROM animals WHERE name = 'Whiskers'`

Результат (только кошка Whiskers 🐱):

```sql
🐱 Whiskers  Cat
```

### Выбрать всех, у кого id больше 2:

`SELECT id, name, species FROM animals WHERE id > 2;`

Результат (id 3 и больше):

```sql
3 🐶 Buddy Dog
4 🐕 Rex   Dog
```

### Операторы в WHERE:

- `=`: Равно
- `>`, `=`, ``: Не равно

Обратите внимание: `WHERE` применяется *после* выбора колонок (SELECT).

## Всё, что мы знаем про фрукты


Вывести все продукты (id, иконка, название, категория, калории) из категории Фрукты (fruits). Будьте внимательны, соблюдайте регистр!

**food**

| id | icon | name | cat | kcal |
| --- | --- | --- | --- | --- |
| 1 | 🍏 | Apple | fruits | 45 |
| 2 | 🍎 | Apple | fruits | 49 |
| 3 | 🍌 | Banana | fruits | 95 |
| 4 | 🥑 | Avocado | fruits | 160 |

## Расскажите про Банан!


Вывести продукт (id, иконка, название, категория, калории) название (name) которого Банан (Banana). Будьте внимательны, соблюдайте регистр!

**food**

| id | icon | name | cat | kcal |
| --- | --- | --- | --- | --- |
| 1 | 🍏 | Apple | fruits | 45 |
| 2 | 🍎 | Apple | fruits | 49 |
| 3 | 🍌 | Banana | fruits | 95 |
| 4 | 🥑 | Avocado | fruits | 160 |

## Информация про Яблоки


Вывести продукты (иконка, название, категория)  название (name) которого Яблоко (Apple). У вас должно получиться 2 яблока -- красное и зеленое. Будьте внимательны, соблюдайте регистр!

**food**

| id | icon | name | cat | kcal |
| --- | --- | --- | --- | --- |
| 1 | 🍏 | Apple | fruits | 45 |
| 2 | 🍎 | Apple | fruits | 49 |
| 3 | 🍌 | Banana | fruits | 95 |
| 4 | 🥑 | Avocado | fruits | 160 |

## Фрукты и сладости


Вывести продукты (иконка, название, категория)  категории (cat) у которых Фрукты (fruits) или сладости (sweets). Будьте внимательны, регистр нижний!

**food**

| id | icon | name | cat | kcal |
| --- | --- | --- | --- | --- |
| 1 | 🍏 | Apple | fruits | 45 |
| 2 | 🍎 | Apple | fruits | 49 |
| 3 | 🍌 | Banana | fruits | 95 |
| 4 | 🥑 | Avocado | fruits | 160 |

## Что угодно кроме брокколи


Выведите вообще все продукты (иконка, название, калорийность) кроме Брокколи (Broccoli). Будьте внимательны, соблюдайте регистр!

## Ограничения LIMIT


**Хватит! Больше не надо! 🐾**

Мы уже умеем выбирать, фильтровать и сортировать данные, теперь займемся обрезкой.

**animals**

| id | name | species | emoji |
| --- | --- | --- | --- |
| 1 | Buddy | Dog | 🐶 |
| 2 | Whiskers | Cat | 🐱 |
| 3 | Leo | Lion | 🦁 |
| 4 | Rex | Dog | 🐕 |
| 5 | Simba | Lion | 🦁 |

### Выбрать первых двух животных

```sql
SELECT * FROM animals LIMIT 2;
```

| id | name | species | emoji |
| --- | --- | --- | --- |
| 1 | Buddy | Dog | 🐶 |
| 2 | Whiskers | Cat | 🐱 |

(только первые две строки)

### Выбрать имя и вид первой собаки

```sql
SELECT name, species FROM animals WHERE species = 'Dog' LIMIT 1;
```

| name | species |
| --- | --- |
| Buddy | Dog |

(Только первая строка).

### Два последних (сначала сортировка, потом ограничение)

```sql
SELECT name FROM animals ORDER BY id DESC LIMIT 2;
```

| name |
| --- |
| Simba |
| Rex |

(Два последних добавленных)

- LIMIT применяется *после* всех других операций (WHERE, ORDER BY).
- LIMIT без ORDER BY может давать непредсказуемые результаты (зависит от порядка хранения данных).

## Вывести только одно яблоко


В нашей таблице есть два яблока – зеленое и красное. Выведите первое, отфильтровав по условию name = Apple ограните выборку с помощью LIMIT. Напоминаем, регистр важен!

**food**

| id | icon | name | cat | kcal |
| --- | --- | --- | --- | --- |
| 1 | 🍏 | Apple | fruits | 45 |
| 2 | 🍎 | Apple | fruits | 49 |
| 3 | 🍌 | Banana | fruits | 95 |
| 4 | 🥑 | Avocado | fruits | 160 |

## Вывести первые два овоща


Вывести иконку и имя у двух первых по названию овощей. Для этого получите все овощи (veggies), отсортируйте по name  (по алфавиту), затем примените LIMIT. Кстати, авокадо - это не овощ, это фрукт!

**food**

| id | icon | name | cat | kcal |
| --- | --- | --- | --- | --- |
| 1 | 🍏 | Apple | fruits | 45 |
| 2 | 🍎 | Apple | fruits | 49 |
| 3 | 🍌 | Banana | fruits | 95 |
| 4 | 🥑 | Avocado | fruits | 160 |

## Вывести записи больше значения


Вывести продукты с калорийностью 200 и выше. Иконка, название, калорийность.

**food**

| id | icon | name | cat | kcal |
| --- | --- | --- | --- | --- |
| 1 | 🍏 | Apple | fruits | 45 |
| 2 | 🍎 | Apple | fruits | 49 |
| 3 | 🍌 | Banana | fruits | 95 |
| 4 | 🥑 | Avocado | fruits | 160 |

## Выбрать между значениями


Вывести иконку, название, калорийность для продуктов с калорийностью от 200 до 300. Выборка должна быть отсортирована по возрастанию калорийности, от меньшего к большему.

**food**

| id | icon | name | cat | kcal |
| --- | --- | --- | --- | --- |
| 1 | 🍏 | Apple | fruits | 45 |
| 2 | 🍎 | Apple | fruits | 49 |
| 3 | 🍌 | Banana | fruits | 95 |
| 4 | 🥑 | Avocado | fruits | 160 |

## Вывести записи меньше значения


Вывести иконку, название, калорийность для  фруктов с калорийностью до 50 килокалорий включительно

**food**

| id | icon | name | cat | kcal |
| --- | --- | --- | --- | --- |
| 1 | 🍏 | Apple | fruits | 45 |
| 2 | 🍎 | Apple | fruits | 49 |
| 3 | 🍌 | Banana | fruits | 95 |
| 4 | 🥑 | Avocado | fruits | 160 |

## Вывести самый калорийный продукт


Выведите иконку (icon), калорийность (kcal) , название (name) и одного, самого калорийного продукта

**food**

| id | icon | name | cat | kcal |
| --- | --- | --- | --- | --- |
| 1 | 🍏 | Apple | fruits | 45 |
| 2 | 🍎 | Apple | fruits | 49 |
| 3 | 🍌 | Banana | fruits | 95 |
| 4 | 🥑 | Avocado | fruits | 160 |

## Вывести самую некалорийную сладость


Выведите иконку (icon), название (name) и калорийность (kcal) одного, наименее калорийного продукта из категории (cat) сладости (sweets).

**food**

| id | icon | name | cat | kcal |
| --- | --- | --- | --- | --- |
| 1 | 🍏 | Apple | fruits | 45 |
| 2 | 🍎 | Apple | fruits | 49 |
| 3 | 🍌 | Banana | fruits | 95 |
| 4 | 🥑 | Avocado | fruits | 160 |
