https://github.com/skytecat/sqlbootcamp
Серия проектов по изучению SQL и работе с реляционными базами данных
https://github.com/skytecat/sqlbootcamp
Last synced: 4 months ago
JSON representation
Серия проектов по изучению SQL и работе с реляционными базами данных
- Host: GitHub
- URL: https://github.com/skytecat/sqlbootcamp
- Owner: skytecat
- Created: 2025-05-05T11:27:35.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-21T15:34:02.000Z (about 1 year ago)
- Last Synced: 2025-06-02T00:58:26.178Z (about 1 year ago)
- Language: PLpgSQL
- Homepage:
- Size: 6.98 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# SQLBootcamp
## **Обзор**
Этот репозиторий содержит проекты, выполненные в рамках SQL1 Bootcamp — интенсивной программы, направленной на изучение SQL и управления реляционными базами данных. Буткемп охватывает широкий спектр тем: от базовых SQL-запросов до продвинутых концепций, таких как OLAP-конструкции, индексация, транзакции и хранимые процедуры.
---
## **Содержание**
1. [Проекты](#проекты)
2. [Основные темы](#основные-темы)
3. [Как использовать этот репозиторий](#как-использовать-этот-репозиторий)
---
## **Проекты**
### **Day00: Введение в реляционную модель**
- **Цель:** Изучить, как работает реляционная модель, и извлекать данные с использованием базовых конструкций SQL.
### **Day01: Операции над множествами и простые JOIN'ы**
- **Цель:** Извлекать данные с использованием операций над множествами (`UNION`, `INTERSECT`, `EXCEPT`) и простых `JOIN`-запросов.
### **Day02: Продвинутые JOIN'ы**
- **Цель:** Извлекать данные с использованием различных типов `JOIN` (например, `INNER JOIN`, `LEFT JOIN`, `RIGHT JOIN`, `FULL OUTER JOIN`).
### **Day03: Язык манипулирования данными (DML)**
- **Цель:** Модифицировать данные с помощью команд DML (`INSERT`, `UPDATE`, `DELETE`).
### **Day04: Виртуальные представления и снимки данных**
- **Цель:** Использовать виртуальные представления (`CREATE VIEW`) и физические снимки данных для эффективного запроса.
### **Day05: Индексация базы данных**
- **Цель:** Понять процесс создания индексов базы данных и их важность для оптимизации запросов.
### **Day06: Интеграция бизнес-функций**
- **Цель:** Научиться интегрировать новые бизнес-функции в существующую модель данных.
### **Day07: OLAP-конструкции**
- **Цель:** Использовать OLAP-конструкции (например, оконные функции) для извлечения аналитических данных.
### **Day08: Уровни изоляции транзакций**
- **Цель:** Разобраться в уровнях изоляции транзакций (`READ UNCOMMITTED`, `READ COMMITTED`, `REPEATABLE READ`, `SERIALIZABLE`) и их значении для управления базами данных.
### **Day09: Функции и хранимые процедуры**
- **Цель:** Создавать и использовать функции и хранимые процедуры для инкапсуляции бизнес-логики.
---
## **Основные темы**
- **Основы SQL:** SELECT, WHERE, ORDER BY, GROUP BY, HAVING.
- **Операции над множествами:** UNION, INTERSECT, EXCEPT.
- **JOIN'ы:** INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN.
- **Язык манипулирования данными (DML):** INSERT, UPDATE, DELETE.
- **Индексация:** Создание и оптимизация индексов базы данных.
- **OLAP-конструкции:** Оконные функции, ранжирование и агрегации.
- **Транзакции:** Уровни изоляции и их влияние на параллелизм.
- **Хранимые процедуры и функции:** Написание переиспользуемой логики базы данных.
---
## **Как использовать этот репозиторий**
1. Склонируйте репозиторий:
2. Исследуйте папки проектов по дням:
- Каждая папка соответствует конкретному дню.
- Предоставлены SQL-скрипты и документация для каждого задания.
3. Запустите SQL-скрипты в предпочитаемой среде базы данных (например, MySQL, PostgreSQL, SQLite).