PostgreSQL - Операторы: Ваш верный гид по магии базы данных
Здравствуйте, будущие маги баз данных! Сегодня мы отправимся в увлекательное путешествие по миру операторов PostgreSQL. Не волнуйтесь, если вы новички в программировании – я буду вашим надежным проводником, и мы шаг за шагом изучим эту тему. К концу этого руководства вы будете удивлены, сколько вы узнали!
Что такое операторы?
Прежде чем мы углубимся, давайте поговорим о том, что такое операторы. Представьте операторы как особые символы, которые instruct PostgreSQL выполнять específicas действия или сравнения. Они как магические палочки мира баз данных – с помощью нескольких символов вы можете творить мощные вещи!
Арифметические операторы PostgreSQL
Давайте начнем с чего-то знакомого – математики! PostgreSQL имеет арифметические операторы, которые работают так же, как и те, что выучили в школе.
Основные арифметические операторы
Вот таблица основных арифметических операторов:
Оператор | Описание | Пример |
---|---|---|
+ | Сложение | 5 + 3 |
- | Вычитание | 7 - 2 |
* | Умножение | 4 * 6 |
/ | Деление | 10 / 2 |
% | Остаток от деления | 7 % 3 |
Давайте увидим это в действии:
SELECT 5 + 3 AS сложение,
7 - 2 AS вычитание,
4 * 6 AS умножение,
10 / 2 AS деление,
7 % 3 AS остаток;
Этот запрос даст вам:
сложение | вычитание | умножение | деление | остаток
---------|-------------|----------------|----------|-------
8 | 5 | 24 | 5 | 1
Не круто ли? Всего одной строкой мы выполнили пять разных вычислений!
Fun с числами
Вот маленькая история, чтобы запомнить эти операторы. Представьте, что вы планируете вечеринку:
- Вы пригласили 5 друзей, но еще 3出现了 (5 + 3 = 8 всего гостей)
- 2 человека ушли рано (8 - 2 = 6 оставшихся гостей)
- У вас есть 4 пиццы, разрезанные на 6 ломтиков каждая (4 * 6 = 24 totales ломтики)
- Вы делите ломтики поровну между 6 гостями (24 / 6 = 4 ломтика на человека)
- Оставшийся 1 ломтик (25 % 6 = 1 остаток)
Сравнительные операторы PostgreSQL
Теперь перейдем к сравнительным операторам. Эти используются для сравнения значений и возвращают true или false.
Таблица сравнительных операторов
Оператор | Описание | Пример |
---|---|---|
= | Равно | 5 = 5 |
<> | Не равно | 5 <> 3 |
< | Меньше чем | 3 < 5 |
> | Больше чем | 5 > 3 |
<= | Меньше или равно | 3 <= 3 |
>= | Больше или равно | 5 >= 5 |
Давайте используем их в реальной ситуации. Представьте, что у нас есть таблица продуктов:
CREATE TABLE products (
id SERIAL PRIMARY KEY,
name VARCHAR(100),
price DECIMAL(10, 2),
stock INT
);
INSERT INTO products (name, price, stock) VALUES
('Laptop', 999.99, 50),
('Smartphone', 599.99, 100),
('Headphones', 79.99, 200);
SELECT name, price
FROM products
WHERE price > 500;
Этот запрос вернет:
name | price
-----------|--------
Laptop | 999.99
Smartphone | 599.99
Здесь мы используем оператор '>' чтобы найти продукты, цена которых превышает 500. Это как если бы вы спросили: "Покажи мне все дорогие вещи!"
Логические операторы PostgreSQL
Логические операторы позволяют нам комбинировать несколько условий. Они как decision-makers мира операторов.
Таблица логических операторов
Оператор | Описание | Пример |
---|---|---|
AND | Оба условия должны быть истинными | a > 5 AND b < 10 |
OR | По крайней мере одно условие должно быть истинным | a > 5 OR b < 10 |
NOT | Отрицание условия | NOT a = 5 |
Давайте используем их в нашем примере с продуктами:
SELECT name, price, stock
FROM products
WHERE price < 600 AND stock > 150;
Этот запрос вернет:
name | price | stock
-----------|-------|------
Headphones | 79.99 | 200
Мы спрашиваем о продуктах, которые и дешевле 600 и есть больше 150 в наличии. Это как если бы мы сказали: "Покажи мне доступные продукты, которых у нас plenty!"
Битовые строковые операторы PostgreSQL
Теперь давайте перейдем к более сложной территории – битовым строковым операторам. Эти operate на битах,最小的 данных единиц в вычислениях.
Таблица битовых строковых операторов
Оператор | Описание | Пример |
---|---|---|
& | Битовое И | B'1010' & B'1100' |
Битовое ИЛИ | ||
# | Битовое ИСКЛЮЧИТЕЛЬНОЕ ИЛИ | B'1010' # B'1100' |
~ | Битовое НЕ | ~ B'1010' |
<< | Битовое смещение влево | B'1010' << 1 |
>> | Битовое смещение вправо | B'1010' >> 1 |
Эти могут показаться немного абстрактными, так что давайте разберем это на примере:
SELECT
B'1010' & B'1100' AS bitwise_and,
B'1010' | B'1100' AS bitwise_or,
B'1010' # B'1100' AS bitwise_xor,
~ B'1010' AS bitwise_not,
B'1010' << 1 AS shift_left,
B'1010' >> 1 AS shift_right;
Это даст вам:
bitwise_and | bitwise_or | bitwise_xor | bitwise_not | shift_left | shift_right
------------|------------|-------------|-------------|------------|-------------
1000 | 1110 | 0110 | 11110101 | 10100 | 101
Представьте их как тайные рукопожатия между битами. Они incredibly полезны в низкоуровневом программировании и манипулировании данными!
И вот мы и arrived, folks! Мы совершили путешествие через мир операторов PostgreSQL, от базовой арифметики до таинственной области битовых операций. Помните, что практика makes perfect, так что не бойтесь экспериментировать с этими операторами в своих запросах. Before you know it, вы будете писать сложные запросы как профессионал!
Credits: Image by storyset