📌База данных (БД) – это система, в которой организованно хранятся данные.📌
📌Реляционные базы данных (SQL) – хранят данные в таблицах.📌
📌NoSQL базы данных – хранят данные в виде документов, ключ-значение, графов.📌
📌Примеры СУБД (систем управления базами данных):📌
- Реляционные (SQL): MySQL, PostgreSQL, Oracle.
- NoSQL(нерялиционная): MongoDB, Firebase, Redis.
Основные элементы базы данных
📌Таблица – структура, в которой хранятся данные.📌
📌Столбец (поле) – содержит один тип данных (например, имя, ID).📌
📌Строка (запись) – одна запись в таблице.📌
📌Первичный ключ (Primary Key) – уникальный идентификатор строки.📌
📌Внешний ключ (Foreign Key) – связывает таблицы между собой.📌
Типы данных в SQL
📌Часто используемые типы данных:📌
- VARCHAR(n) – текст (например, имена).
- INT – целые числа (например, возраст, ID).
- FLOAT – числа с запятой (например, цены).
- BOOLEAN – логические значения (true/false).
- DATE – дата (например, «2024-01-31»).
SQL – язык работы с базами данных
📌SQL (Structured Query Language) – язык для управления данными в БД.📌
📌Основные команды SQL:📌
Команда | Описание | Пример |
CREATE TABLE | Создать таблицу | CREATE TABLE users (id INT, name VARCHAR(50)); |
INSERT INTO | Добавить данные | INSERT INTO users VALUES (1, ‘Alice’); |
SELECT | Получить данные | SELECT * FROM users; |
UPDATE | Обновить данные | UPDATE users SET name=’Bob’ WHERE id=1; |
DELETE | Удалить данные | DELETE FROM users WHERE id=1; |
DROP TABLE | Удалить таблицу | DROP TABLE users; |
Фильтрация данных в SQL
📌Как выбрать определённые данные?📌
WHERE – выбирает строки с нужными значениями.
SELECT * FROM users WHERE name = ‘Alice’;
ORDER BY – сортирует данные.
SELECT * FROM users ORDER BY name ASC;
LIMIT – ограничивает количество строк.
SELECT * FROM users LIMIT 5;
DISTINCT – убирает дубликаты.
SELECT DISTINCT city FROM users;
LIKE – поиск по шаблону.
SELECT * FROM users WHERE name LIKE ‘A%’;
Связи между таблицами
📌Типы связей в БД:📌
Один ко многим (1:M) – один элемент связан с несколькими (например, один пользователь – много заказов).
Многие ко многим (M:M) – связь через промежуточную таблицу.
Один к одному (1:1) – редкий тип (например, один паспорт – один человек).
Внешний ключ (FOREIGN KEY) – используется для связи таблиц.
CREATE TABLE orders (
order_id INT PRIMARY KEY,
user_id INT,
FOREIGN KEY (user_id) REFERENCES users(id)
);
Работа с группировками
📌Группировка данных в SQL:📌
GROUP BY – группирует данные.
SELECT city, COUNT(*) FROM users GROUP BY city;
HAVING – фильтрация после GROUP BY.
SELECT city, COUNT(*) FROM users GROUP BY city HAVING COUNT(*) > 10;
Соединение таблиц (JOIN)
📌Типы соединений (JOIN):📌
INNER JOIN – выводит только совпадающие данные.
LEFT JOIN – все данные из первой таблицы + совпадающие из второй.
RIGHT JOIN – все данные из второй таблицы + совпадающие из первой.
SELECT users.name, orders.order_id
FROM users
INNER JOIN orders ON users.id = orders.user_id;
Удаление и изменение таблиц
📌Основные команды:📌
DROP TABLE – полностью удаляет таблицу.
ALTER TABLE – изменяет структуру таблицы.
TRUNCATE TABLE – очищает таблицу, не удаляя её структуру.