Оператор NOT

Що робить NOT
Оператор NOT інвертує умову:    
• TRUE → FALSE    
• FALSE → TRUE
Синтаксис
SELECT *
FROM users
WHERE NOT is_blocked = 1;
— Запит повертає всіх користувачів, які не заблоковані.

Приклад

-- Створюємо базу даних
CREATE DATABASE not_practice_db;
USE not_practice_db;
-- Створимо таблицю students.
CREATE TABLE students (
    id INT AUTO_INCREMENT PRIMARY KEY,
    full_name VARCHAR(100),
    class VARCHAR(10),
    age INT,
    grade INT,
    is_active BOOLEAN
);

--  Заповнюємо таблицю даними
INSERT INTO students (full_name, class, age, grade, is_active) VALUES
('Oleh Ivanenko', '10A', 15, 85, 1),
('Anna Petrenko', '10B', 16, 92, 1),
('Dmytro Shevchuk', '9A', 14, 70, 0),
('Iryna Melnyk', '11A', 17, 88, 1),
('Serhii Bondar', '9B', 14, 60, 0);

-- Активні учні (через NOT)
SELECT *
FROM students
WHERE NOT is_active = 0;
-- Повертає всіх учнів, які навчаються зараз.

-- Учні, які не з 9 класу
SELECT full_name, class
FROM students
WHERE NOT class LIKE '9%';
-- Повертає учнів, клас яких не починається з “9”.

-- Учні з балом НЕ між 80 і 90
SELECT *
FROM students
WHERE grade NOT BETWEEN 80 AND 90;
-- Повертає учнів: з низьким балом або з дуже високим

-- NOT IN
SELECT *
FROM students
WHERE class NOT IN ('10A', '11A');
-- Повертає учнів, які не навчаються в 10A та 11A

Для додаткової візуалізації є відео.

Оператор OR

Що робить OR
Оператор OR повертає TRUE, якщо хоча б одна умова істинна.
Синтаксис
SELECT *
FROM users
WHERE role = ‘admin’ OR role = ‘manager’;
Результат міститиме:    
• адміністраторів    
• або менеджерів
Навіть якщо друга умова хибна, але перша істинна — рядок потрапить у вибірку.

Приклад

-- Створюємо базу даних
CREATE DATABASE or_practice_db;
USE or_practice_db;
-- Створимо таблицю employees — співробітники компанії.
CREATE TABLE employees (
    id INT AUTO_INCREMENT PRIMARY KEY,
    full_name VARCHAR(100),
    department VARCHAR(50),
    position VARCHAR(50),
    salary INT,
    is_active BOOLEAN
);

-- Заповнюємо таблицю даними
INSERT INTO employees (full_name, department, position, salary, is_active) VALUES
('Ivan Petrenko', 'IT', 'Developer', 40000, 1),
('Olena Kovalenko', 'HR', 'Recruiter', 25000, 1),
('Mykola Shevchenko', 'IT', 'Tester', 30000, 0),
('Maria Bondar', 'Sales', 'Manager', 28000, 1),
('Oleh Shevchuk', 'Sales', 'Intern', 15000, 0);

-- Працівники з IT або Sales
SELECT *
FROM employees
WHERE department = 'IT' OR department = 'Sales';

-- Активні або з високою зарплатою
SELECT full_name, salary, is_active
FROM employees
WHERE is_active = 1 OR salary > 30000;

-- OR + числові умови
SELECT *
FROM employees
WHERE salary < 20000 OR salary > 35000;

-- OR + LIKE
SELECT *
FROM employees
WHERE position LIKE '%Manager%' OR position LIKE '%Developer%';
-- Повертає менеджерів або розробників.

Для додаткової візуалізації є відео.

З Новим Роком!

Happy New Year!

Нехай цей рік почнеться з надії та віри в краще, а продовжиться приємними подіями, теплими зустрічами й маленькими радощами, з яких складається справжнє щастя. Бажаю, щоб кожен день приносив нові можливості, натхнення для звершень і впевненість у власних силах.

Нехай у домі панують затишок і спокій, поруч будуть щирі люди, а в серці — світло та любов. Хай мрії знаходять шлях до здійснення, а Новий Рік стане кроком до життя, про яке ви давно мріяли.

Підтримуйте ЗСУ!

Тримаймося!

Слава Україні!