SQL - Операторы

Добро пожаловать, будущие маги баз данных! Сегодня мы погружаемся в магический мир SQL-операторов. Не волнуйтесь, если вы никогда не писали ни строчки кода — мы начнем с самого начала и постепенно будем продвигаться вперед. К концу этого урока вы сможете вызывать данные не хуже kuin другие!

SQL - Operators

Что такое SQL-оператор?

Давайте начнем с азов. SQL-оператор — это как особый инструмент в вашем наборе инструментов для работы с базами данных. Он помогает вам выполнять операции с вашими данными, будь то сравнение значений, выполнение математических операций или комбинирование информации. Представьте операторы как глаголы в ваших SQL-предложениях — они заставляют все работать!

Например, когда вы говорите "Я хочу всех клиентов, чей возраст больше 30", часть "больше" — это оператор. Он сообщает базе данных, как фильтровать ваши данные.

Типы операторов в SQL

Теперь давайте рассмотрим различные типы операторов в SQL. Мы их классифицируем и дадим примеры для каждого. Затяните ремни, потому что мы отправляемся на американские горки по операторному полю!

1. Арифметические операторы

Эти операторы помогают вам выполнять математические операции с вашими данными. Вот таблица арифметических операторов:

Оператор Описание Пример
+ Сложение 5 + 3 = 8
- Вычитание 7 - 2 = 5
* Умножение 4 * 6 = 24
/ Деление 15 / 3 = 5
% Остаток от деления 17 % 5 = 2

Давайте посмотрим, как это работает:

SELECT product_name, price, price * 1.1 AS price_with_tax
FROM products;

В этом примере мы вычисляем новую цену, которая включает 10% налога. Оператор * умножает исходную цену на 1.1.

2. Сравнительные операторы

Эти операторы помогают вам сравнивать значения. Они super полезны для фильтрации данных. Вот таблица сравнительных операторов:

Оператор Описание Пример
= Равно age = 30
<> Не равно status <> 'Completed'
> Больше price > 100
< Меньше quantity < 5
>= Больше или равно rating >= 4
<= Меньше или равно discount <= 0.2

Давайте используем их в запросе:

SELECT customer_name, age
FROM customers
WHERE age > 30 AND status = 'Active';

Этот запрос находит всех активных клиентов старше 30 лет. Оператор > проверяет возраста старше 30, а оператор = обеспечивает, чтобы статус был exactly 'Active'.

3. Логические операторы

Логические операторы помогают вам комбинировать несколько условий. Они как клей, который удерживает ваши сложные запросы together. Вот таблица логических операторов:

Оператор Описание
AND Истина, если оба условия истинны
OR Истина, если любое из условий истинно
NOT Инвертирует результат условия

Давайте посмотрим, как мы можем их использовать:

SELECT product_name, price, category
FROM products
WHERE (category = 'Electronics' OR category = 'Computers')
AND price < 1000
AND NOT discontinued;

Этот запрос находит товары в категориях 'Electronics' или 'Computers', priced below $1000, и не снятые с производства. Это как сказать базе данных: "Дай мне все классные гаджеты, которые не разорят бюджет и все еще доступны!"

4. Оператор LIKE

Оператор LIKE ваш лучший друг, когда вы ищете шаблоны в текстовых данных. Он использует wildcards для соответствия частям строк:

  • % : Подходит для любого количества символов
  • _ : Подходит для одного символа

Вот пример:

SELECT customer_name, email
FROM customers
WHERE email LIKE '%@gmail.com';

Этот запрос находит всех клиентов с адресами Gmail. Символ % соответствует любым символам перед '@gmail.com'.

5. Оператор IN

Оператор IN — это короткий способ объединить несколько условий OR. Он super удобен, когда вы ищете совпадения в списке значений.

SELECT product_name, category
FROM products
WHERE category IN ('Books', 'Movies', 'Music');

Этот запрос выбирает все товары в категориях 'Books', 'Movies' или 'Music'. Это гораздо чище, чем писать category = 'Books' OR category = 'Movies' OR category = 'Music'.

6. Оператор BETWEEN

Оператор BETWEEN помогает вам находить значения в диапазоне. Он включителен, то есть включает граничные значения.

SELECT order_id, order_date, total_amount
FROM orders
WHERE order_date BETWEEN '2023-01-01' AND '2023-12-31';

Этот запрос находит все заказы, размещенные в 2023 году. Это как сказать: "Покажи мне все с Нового года до кануна Нового года!"

Приоритетность операторов в SQL

Теперь, когда мы познакомились со всеми этими замечательными операторами, важно знать, как SQL решает, какие из них evaluieren первыми при использовании нескольких операторов в одном запросе. Это называется приоритетностью операторов.

Вот упрощенная таблица приоритетности SQL-операторов, отhighest до lowest:

  1. Скобки ()
  2. Умножение/Деление (*, /)
  3. Сложение/Вычитание (+, -)
  4. Сравнительные операторы (=, <>, <, >, <=, >=)
  5. NOT
  6. AND
  7. OR

Давайте посмотрим, как это работает:

SELECT product_name, price, category
FROM products
WHERE category = 'Electronics' AND (price < 500 OR rating > 4);

В этом запросе SQL будет:

  1. Оценивать условия внутри скобок первыми (price < 500 OR rating > 4)
  2. Затем применить оператор AND с условием категории

Это даст нам все электроники, которые либо дешевле $500, либо имеют рейтинг выше 4.

Помните, вы всегда можете использовать скобки, чтобы явно контролировать порядок операций, если вы не уверены или хотите override defaultManager приоритетность.

И вот оно,folks! Вы только что完成了 ваш crash course в SQL-операторах. С этими инструментами в вашем арсенале, вы на пути к тому, чтобы стать maestro по манипулированию данными. Помните, что практика делает perfect, так что не бойтесь экспериментировать с этими операторами в своих собственных запросах. Счастливого кодирования!

Credits: Image by storyset