┌─x─┬────y─┐
│ 1 │ ᴺᵁᴸᴸ │
└───┴──────┘
┌─x─┬─y─┐
│ 2 │ 3 │
└───┴───┘
```sql
CREATE TABLE products (
id UInt32,
name String,
price Float32,
category String,
in_stock Bool
) ENGINE = MergeTree()
ORDER BY id;
INSERT INTO products VALUES
(1, 'Laptop', 999.99, 'Electronics', true),
(2, 'Mouse', 25.50, 'Electronics', true),
(3, 'Desk', 299.00, 'Furniture', false),
(4, 'Chair', 150.00, 'Furniture', true),
(5, 'Monitor', 350.00, 'Electronics', true),
(6, 'Lamp', 45.00, 'Furniture', false);
```sql
CREATE TABLE products (
id UInt32,
name String,
price Float32,
category String,
in_stock Bool
) ENGINE = MergeTree()
ORDER BY id;
INSERT INTO products VALUES
(1, 'Ноутбук', 999.99, 'Электроника', true),
(2, 'Мышь', 25.50, 'Электроника', true),
(3, 'Стол', 299.00, 'Мебель', false),
(4, 'Стул', 150.00, 'Мебель', true),
(5, 'Монитор', 350.00, 'Электроника', true),
(6, 'Лампа', 45.00, 'Мебель', false);
```sql
SELECT * FROM products
WHERE category = 'Electronics' AND price < 500;
```sql
SELECT * FROM products
WHERE category = 'Electronics' AND price < 500;
```response
┌─id─┬─name────┬─price─┬─category────┬─in_stock─┐
1. │ 2 │ Mouse │ 25.5 │ Electronics │ true │
2. │ 5 │ Monitor │ 350 │ Electronics │ true │
└────┴─────────┴───────┴─────────────┴──────────┘
```response
┌─id─┬─name────┬─price─┬─category────┬─in_stock─┐
1. │ 2 │ Mouse │ 25.5 │ Электроника │ true │
2. │ 5 │ Monitor │ 350 │ Электроника │ true │
└────┴─────────┴───────┴─────────────┴──────────┘
```sql
SELECT * FROM products
WHERE category = 'Furniture' OR price > 500;
```sql
SELECT * FROM products
WHERE category = 'Мебель' OR price > 500;
```response
┌─id─┬─name───┬──price─┬─category────┬─in_stock─┐
1. │ 1 │ Laptop │ 999.99 │ Electronics │ true │
2. │ 3 │ Desk │ 299 │ Furniture │ false │
3. │ 4 │ Chair │ 150 │ Furniture │ true │
4. │ 6 │ Lamp │ 45 │ Furniture │ false │
└────┴────────┴────────┴─────────────┴──────────┘
```response
┌─id─┬─name───┬──price─┬─category────┬─in_stock─┐
1. │ 1 │ Ноутбук │ 999.99 │ Электроника │ true │
2. │ 3 │ Стол │ 299 │ Мебель │ false │
3. │ 4 │ Стул │ 150 │ Мебель │ true │
4. │ 6 │ Лампа │ 45 │ Мебель │ false │
└────┴────────┴────────┴─────────────┴──────────┘
```sql
SELECT * FROM products
WHERE NOT in_stock;
```sql
SELECT * FROM products
WHERE NOT in_stock;
```response
┌─id─┬─name─┬─price─┬─category──┬─in_stock─┐
1. │ 3 │ Desk │ 299 │ Furniture │ false │
2. │ 6 │ Lamp │ 45 │ Furniture │ false │
└────┴──────┴───────┴───────────┴──────────┘
```response
┌─id─┬─name─┬─price─┬─category──┬─in_stock─┐
1. │ 3 │ Стол │ 299 │ Мебель │ false │
2. │ 6 │ Лампа│ 45 │ Мебель │ false │
└────┴──────┴───────┴───────────┴──────────┘
```sql
SELECT *
FROM products
WHERE xor(price > 200, category = 'Electronics')
```sql
SELECT *
FROM products
WHERE xor(price > 200, category = 'Electronics')
```response
┌─id─┬─name──┬─price─┬─category────┬─in_stock─┐
1. │ 2 │ Mouse │ 25.5 │ Electronics │ true │
2. │ 3 │ Desk │ 299 │ Furniture │ false │
└────┴───────┴───────┴─────────────┴──────────┘
```response
┌─id─┬─name──┬─price─┬─category────┬─in_stock─┐
1. │ 2 │ Mouse │ 25.5 │ Электроника │ true │
2. │ 3 │ Desk │ 299 │ Мебель │ false │
└────┴───────┴───────┴─────────────┴──────────┘
```sql
SELECT * FROM products
WHERE (category = 'Electronics' OR category = 'Furniture')
AND in_stock = true
AND price < 400;
```sql
SELECT * FROM products
WHERE (category = 'Электроника' OR category = 'Мебель')
AND in_stock = true
AND price < 400;
```response
┌─id─┬─name────┬─price─┬─category────┬─in_stock─┐
1. │ 2 │ Mouse │ 25.5 │ Electronics │ true │
2. │ 4 │ Chair │ 150 │ Furniture │ true │
3. │ 5 │ Monitor │ 350 │ Electronics │ true │
└────┴─────────┴───────┴─────────────┴──────────┘
```response
┌─id─┬─name────┬─price─┬─category────┬─in_stock─┐
1. │ 2 │ Mouse │ 25.5 │ Электроника │ true │
2. │ 4 │ Chair │ 150 │ Мебель │ true │
3. │ 5 │ Monitor │ 350 │ Электроника │ true │
└────┴─────────┴───────┴─────────────┴──────────┘
```sql
SELECT * FROM products
WHERE and(or(category = 'Electronics', price > 100), in_stock);
```sql
SELECT * FROM products
WHERE and(or(category = 'Electronics', price > 100), in_stock);
```response
┌─id─┬─name────┬──price─┬─category────┬─in_stock─┐
1. │ 1 │ Laptop │ 999.99 │ Electronics │ true │
2. │ 2 │ Mouse │ 25.5 │ Electronics │ true │
3. │ 4 │ Chair │ 150 │ Furniture │ true │
4. │ 5 │ Monitor │ 350 │ Electronics │ true │
└────┴─────────┴────────┴─────────────┴──────────┘
```response
┌─id─┬─name────┬──price─┬─category────┬─in_stock─┐
1. │ 1 │ Ноутбук │ 999.99 │ Электроника │ true │
2. │ 2 │ Мышь │ 25.5 │ Электроника │ true │
3. │ 4 │ Стул │ 150 │ Мебель │ true │
4. │ 5 │ Монитор │ 350 │ Электроника │ true │
└────┴─────────┴────────┴─────────────┴──────────┘
```sql
SELECT * FROM products
WHERE in_stock
```sql
SELECT * FROM products
WHERE in_stock
```response
┌─id─┬─name────┬──price─┬─category────┬─in_stock─┐
1. │ 1 │ Laptop │ 999.99 │ Electronics │ true │
2. │ 2 │ Mouse │ 25.5 │ Electronics │ true │
3. │ 4 │ Chair │ 150 │ Furniture │ true │
4. │ 5 │ Monitor │ 350 │ Electronics │ true │
└────┴─────────┴────────┴─────────────┴──────────┘
```response
┌─id─┬─name────┬──price─┬─category────┬─in_stock─┐
1. │ 1 │ Ноутбук │ 999.99 │ Электроника │ true │
2. │ 2 │ Мышь │ 25.5 │ Электроника │ true │
3. │ 4 │ Стул │ 150 │ Мебель │ true │
4. │ 5 │ Монитор │ 350 │ Электроника │ true │
└────┴─────────┴────────┴─────────────┴──────────┘
```sql
SELECT * FROM products
WHERE in_stock = true;
-- or
WHERE in_stock = 1;
```sql
SELECT * FROM products
WHERE in_stock = true;
-- или
WHERE in_stock = 1;
```sql
SELECT * FROM products
WHERE in_stock = false;
-- or
WHERE in_stock = 0;
```sql
SELECT * FROM products
WHERE in_stock = false;
-- или
WHERE in_stock = 0;
```sql
SELECT * FROM products
WHERE in_stock != false;
-- or
WHERE in_stock != 0;
```sql
SELECT * FROM products
WHERE in_stock != false;
-- или
WHERE in_stock != 0;
```sql
SELECT * FROM products
WHERE in_stock > 0;
```sql
SELECT * FROM products
WHERE in_stock > 0;
```sql
SELECT * FROM products
WHERE in_stock <= 0;
```sql
SELECT * FROM products
WHERE in_stock <= 0;
```sql
SELECT * FROM products
WHERE in_stock AND price < 400;
```sql
SELECT * FROM products
WHERE in_stock AND price < 400;
```sql
SELECT * FROM products
WHERE in_stock IN (1, true);
```sql
SELECT * FROM products
WHERE in_stock IN (1, true);
```sql
SELECT * FROM products
WHERE in_stock IN [1, true];
```sql
SELECT * FROM products
WHERE in_stock IN [1, true];
```sql
SELECT * FROM products
WHERE category = 'Electronics' AND in_stock = true;
```sql
SELECT * FROM products
WHERE category = 'Электроника' AND in_stock = true;
```sql
-- Find products with 'o' in the name
SELECT * FROM products WHERE name LIKE '%o%';
-- Result: Laptop, Monitor
-- Find products starting with 'L'
SELECT * FROM products WHERE name LIKE 'L%';
-- Result: Laptop, Lamp
-- Find products with exactly 4 characters
SELECT * FROM products WHERE name LIKE '____';
-- Result: Desk, Lamp
```sql
-- Найти продукты с буквой 'o' в названии
SELECT * FROM products WHERE name LIKE '%o%';
-- Результат: Laptop, Monitor
-- Найти продукты, начинающиеся с 'L'
SELECT * FROM products WHERE name LIKE 'L%';
-- Результат: Laptop, Lamp
-- Найти продукты с названием из ровно 4 символов
SELECT * FROM products WHERE name LIKE '____';
-- Результат: Desk, Lamp
```sql
-- Case-insensitive search for 'LAPTOP'
SELECT * FROM products WHERE name ILIKE '%laptop%';
-- Result: Laptop
-- Case-insensitive prefix match
SELECT * FROM products WHERE name ILIKE 'l%';
-- Result: Laptop, Lamp
```sql
-- Поиск без учета регистра для 'LAPTOP'
SELECT * FROM products WHERE name ILIKE '%laptop%';
-- Результат: Laptop
-- Совпадение по префиксу без учета регистра
SELECT * FROM products WHERE name ILIKE 'l%';
-- Результат: Laptop, Lamp
```sql
-- Different price thresholds by category
SELECT * FROM products
WHERE if(category = 'Electronics', price < 500, price < 200);
-- Result: Mouse, Chair, Monitor
-- (Electronics under $500 OR Furniture under $200)
-- Filter based on stock status
SELECT * FROM products
WHERE if(in_stock, price > 100, true);
-- Result: Laptop, Chair, Monitor, Desk, Lamp
-- (In stock items over $100 OR all out-of-stock items)
```sql
-- Различные пороговые значения цены по категориям
SELECT * FROM products
WHERE if(category = 'Electronics', price < 500, price < 200);
-- Результат: Mouse, Chair, Monitor
-- (Электроника дешевле $500 ИЛИ Мебель дешевле $200)
-- Фильтрация по статусу наличия на складе
SELECT * FROM products
WHERE if(in_stock, price > 100, true);
-- Результат: Laptop, Chair, Monitor, Desk, Lamp
-- (Товары в наличии дороже $100 ИЛИ все отсутствующие товары)
```sql
-- Multiple category-based conditions
SELECT * FROM products
WHERE multiIf(
category = 'Electronics', price < 600,
category = 'Furniture', in_stock = true,
false
);
-- Result: Mouse, Monitor, Chair
-- (Electronics < $600 OR in-stock Furniture)
-- Tiered filtering
SELECT * FROM products
WHERE multiIf(
price > 500, category = 'Electronics',
price > 100, in_stock = true,
true
);
-- Result: Laptop, Chair, Monitor, Lamp
```sql
-- Множественные условия на основе категорий
SELECT * FROM products
WHERE multiIf(
category = 'Electronics', price < 600,
category = 'Furniture', in_stock = true,
false
);
-- Результат: Mouse, Monitor, Chair
-- (Electronics < $600 ИЛИ Furniture в наличии)
-- Многоуровневая фильтрация
SELECT * FROM products
WHERE multiIf(
price > 500, category = 'Electronics',
price > 100, in_stock = true,
true
);
-- Результат: Laptop, Chair, Monitor, Lamp
```sql
-- Different rules per category
SELECT * FROM products
WHERE CASE category
WHEN 'Electronics' THEN price < 400
WHEN 'Furniture' THEN in_stock = true
ELSE false
END;
-- Result: Mouse, Monitor, Chair
```sql
-- Различные правила для каждой категории
SELECT * FROM products
WHERE CASE category
WHEN 'Electronics' THEN price < 400
WHEN 'Furniture' THEN in_stock = true
ELSE false
END;
-- Результат: Mouse, Monitor, Chair
```sql
-- Price-based tiered logic
SELECT * FROM products
WHERE CASE
WHEN price > 500 THEN in_stock = true
WHEN price > 100 THEN category = 'Electronics'
ELSE true
END;
-- Result: Laptop, Monitor, Mouse, Lamp
```sql
-- Многоуровневая логика на основе цены
SELECT * FROM products
WHERE CASE
WHEN price > 500 THEN in_stock = true
WHEN price > 100 THEN category = 'Electronics'
ELSE true
END;
-- Результат: Laptop, Monitor, Mouse, Lamp