0% нашли этот документ полезным (0 голосов)
3 просмотров15 страниц

SQL

Документ представляет собой справочник по SQL, описывающий основные команды, типы данных и ключи в базах данных. Он охватывает создание, чтение, обновление и удаление данных, а также использование агрегатных функций и операторов JOIN. Включены примеры синтаксиса и результатов выполнения команд, что делает его полезным для изучения SQL.

Загружено:

takhirzhonovich
Авторское право
© All Rights Reserved
Мы серьезно относимся к защите прав на контент. Если вы подозреваете, что это ваш контент, заявите об этом здесь.
Доступные форматы
Скачать в формате PDF, TXT или читать онлайн в Scribd
0% нашли этот документ полезным (0 голосов)
3 просмотров15 страниц

SQL

Документ представляет собой справочник по SQL, описывающий основные команды, типы данных и ключи в базах данных. Он охватывает создание, чтение, обновление и удаление данных, а также использование агрегатных функций и операторов JOIN. Включены примеры синтаксиса и результатов выполнения команд, что делает его полезным для изучения SQL.

Загружено:

takhirzhonovich
Авторское право
© All Rights Reserved
Мы серьезно относимся к защите прав на контент. Если вы подозреваете, что это ваш контент, заявите об этом здесь.
Доступные форматы
Скачать в формате PDF, TXT или читать онлайн в Scribd

Справочник

аналитика
SQL
SQL

SQL (сокр. от Structured Query Language) — это язык для взаимодействия с базами данных.
SQL предназначен для создания, управления и манипуляции данными.

Основные особенности SQL:


Структурированные данные (таблицы с столбцами и строками)
Поддерживается многими СУБД (системами управления базами данных), такими как MySQL,
PostgreSQL, Oracle, Microsoft SQL Server, SQLite.

База данных (БД) — это организованная коллекция данных, которая хранится и управляется
системой управления базами данных (СУБД). Базы данных используются для хранения
информации, необходимой для работы приложений, сайтов и других систем.
Пример: база данных для компании может содержать таблицы с данными о сотрудниках,
клиентах, продажах и продуктах.

Таблица — это структура для хранения данных в базе. Таблица состоит из строк (записей)
и колонок (полей).
Строки представляют отдельные записи (например, информацию о конкретном сотруднике).
Колонки представляют атрибуты записи (например, имя, возраст, должность).
Каждая колонка в таблице имеет имя и тип данных. Тип данных определяет,
какие значения могут быть записаны в колонку (например, числа, текст, даты).

8 стр.
SQL

Основные команды Синтаксис Пример Результат

01/ Создание базы


CREATE DATABASE database_name;

CREATE DATABASE academica;

Создаётся база данных academica и таблица

students.
данных и таблицы
CREATE TABLE table_name (
CREATE TABLE students (

Команды CREATE DATABASE и CREATE column1 datatype,


student_id INT PRIMARY KEY,

TABLE используются для создания новой column2 datatype,


name VARCHAR(50),

базы данных и таблицы в ней. При создании column3 datatype ); age INT,

таблицы определяются ее структура и типы grade CHAR(1)

данных для каждого столбца. );

02/ Вставка данных


INSERT INTO table_name (column1, column2) INSERT INTO students (student_id, name, а ись добавлена в таблицу:

З п

VALUES (value1, value2); age, grade)


student_id name age grade

Команда INSERT INTO используется для VALUES (1, 'John Doe', 20, 'A'); 1 John Doe 20 A
добавления новых строк (записей) в таблицу.

SELECT column1, column2


SELECT name, grade
name grade

FROM table_name FROM students; John Doe A

SELECT * FROM table_name SELECT * FROM students; П редположим, у нас быол добавлено пять
строк:

03/ Чтение данных


student_id name age grade

Команда SELECT используется для 1 John Doe 20 A

извлечения данных из одной или нескольких 2 Jane Smith 22 B

таблиц. Можно указать, какие столбцы 3 Mike Brown 19 А

нужно выбрать, и применить условия 4 Emily Davis 21 C

фильтрации. 5 Sarah Johnson 23 A

* - выбрать все столбцы.


SELECT name, grade
name grade

WHERE - фильтрация данных.


FROM students
Sarah Johnson A
ORDER BY - сортировка (ASC/DESC).
WHERE grade = 'A'

LIMIT - ограничение числа строк. ORDER BY age DESC

LIMIT 1;

9 стр.
SQL

Основные команды Синтаксис Пример Результат

03/ Чтение данных Фильтрация данных SELECT *

FROM students

student_id
1
name
John Doe
a ge
0
gr ade

Операторы сравнения:
Логические операторы:
2 A

Команда SELECT используется для =: равно


AND: логическое "И"
WHERE age > 18 AND grade = 'A'; 3 Mike Brown 19 А

извлечения данных из одной или нескольких != или <>: не равно


OR: логическое "ИЛИ"
5 Sarah Johnson 23 A
таблиц. Можно указать, какие столбцы >: больше

<: меньше

NOT: логическое "НЕ"


нужно выбрать, и применить условия >=: больше или равно

фильтрации. <=: меньше или равно

04/ Обновление данных UPDATE table_name

SET column1 = value1

UPDATE students

SET grade = 'B'

student_id
1
name
John Doe
a ge
20
gr

ade

Команда UPDATE используется для WHERE condition; WHERE student_id = 1; 2 Jane Smith 22 B

изменения существующих данных в таблице. 3 Mike Brown 19 А

Можно обновить один или несколько 4 Emily Davis 21 C

столбцов для одной или нескольких строк. 5 Sarah Johnson 23 A

05/ Удаление данных DELETE FROM table_name

WHERE condition;
DELETE FROM students

WHERE age < 18;


student_id
1
name
John Doe
a ge
20
grade

Команда DELETE используется для удаления 2 Jane Smith 22 B

одной или нескольких строк из таблицы на 3 Mike Brown 19 А

основе заданных условий. 4 Emily Davis 21 C

5 Sarah Johnson 23 A

(нет студентов с возрастом меньше 18 лет)

SELECT grade, COUNT(*) AS student_count

06/ Группировка данных SELECT column1, COUNT(*)

FROM table_name
FROM students

gr

A
ade student_count

Команда GROUP BY используется для GROUP BY column1


GROUP BY grade
B 2

группировки строк, имеющих одинаковые HAVING condition; HAVING COUNT(*) > 1;


значения в указанных столбцах, что

позволяет выполнять агрегатные функции,


такие как COUNT, SUM, AVG и т.д.

DROP TABLE students;


Таблица students и база данных academica
07/ Удаление таблицы или DROP TABLE table_name;

DROP DATABASE database_name; DROP DATABASE academica; далены. Теперь они больше не существуют.
базы данных у

Команды DROP TABLE и DROP DATABASE


используются для удаления существующей
таблицы или базы данных, включая все
данные и структуру.

10 стр.
SQL

Основные категории типов данных в SQL


01/ Числовые типы
Целые числа:
Тип Диапазон значений Описание
TINYINT -128 до 127 (1 байт) Маленькое целое число
SMALLINT -32,768 до 32,767 (2 байта) Маленькое целое число
MEDIUMINT -8,388,608 до 8,388,607 (3 байта) Среднее целое число
INT или INTEGER -2,147,483,648 до 2,147,483,647 (4 байта) Обычное целое число
BIGINT -9,223,372,036,854,775,808 до 9,223,372,036,854,775,807 (8 байт) Большое целое число

Числа с плавающей точкой:


Тип Диапазон значений Описание
FLOAT ~± 1.5 × 10⁻⁴⁵ до ±3.4 × 10³⁸ Ч исла с плавающей точкой
(4 байта)
DOUBLE / REAL ~± 2.2 × 10⁻³⁰⁸ до ±1.8 × 10³⁰⁸ Числа с плавающей точкой
двойной точности (8 байт)
DECIMAL / NUMERIC а исит от определения (точность до 65 знаков)
З в Числа с фиксированной
точностью

11 стр.
SQL

Основные категории типов данных в SQL


02/ Строковые типы
Фиксированная и переменная длина:
Тип Максимальная длина Описание
CHAR(n) До 255 символов Строка фиксированной длины
VARCHAR(n) До 65,535 символов (зависит от таблицы) Строка переменной длины

Текстовые данные:
Тип Максимальная длина Описание
TINYTEXT До 255 символов Очень маленький текст
TEXT До 65,535 символов Текст среднего размера
MEDIUMTEXT До 16,777,215 символов Большой текст
LONGTEXT До 4,294,967,295 символов Очень большой текст

12 стр.
SQL

Основные категории типов данных в SQL


02/ Строковые типы
Двоичные строки:
Тип Максимальная длина Описание
BINARY(n) До 255 байтов Двоичная строка фиксированной длины
VARBINARY(n) До 65,535 байтов Двоичная строка переменной длины

03/ Дата и время


Тип Формат Описание
DATE YYYY-MM-DD Дата без времени
DATETIME YYYY-MM-DD HH:MM:SS Дата и время
TIMESTAMP YYYY-MM-DD HH:MM:SS Дата и время с часовым поясом
TIME HH:MM:SS Время
YEAR YYYY Год (диапазон от 1901 до 2155)

13 стр.
SQL

Основные категории типов данных в SQL


04/ Булевы типы
Тип Максимальная длина
BOOLEAN Логическое значение (TRUE или FALSE)

14 стр.
SQL

Агрегатные функции в SQL используются для выполнения вычислений над множеством


значений и возвращают одно значение. Они часто применяются в сочетании с оператором
GROUP BY для группировки данных. Вот несколько основных агрегатных функций:

COUNT(): SUM():
Подсчитывает количество строк в выборке.
Суммирует значения в указанном столбце.

Например, COUNT(*) возвращает общее количество строк. Например, SUM(salary) вычисляет общую сумму зарплат.

AVG(): MIN():
Вычисляет среднее значение для указанного столбца.
Находит минимальное значение в указанном столбце.

Например, AVG(age) возвращает средний возраст. Например, MIN(price) возвращает наименьшую цену.

MAX():
Находит максимальное значение в указанном столбце.

Например, MAX(score) возвращает наивысший балл.

Агрегатные функции помогают анализировать данные и извлекать


полезную информацию из больших наборов данных.

15 стр.
SQL

Ключи в базах данных — это атрибуты или наборы атрибутов, которые


используются для уникальной идентификации записей в таблице.

Вот краткая инструкция по основным типам ключей:

Первичный ключ (Primary Key):


Уникально идентифицирует каждую запись в таблице
Не может содержать NULL-значения
В каждой таблице может быть только один первичный ключ

Внешний ключ (Foreign Key):


Связывает записи одной таблицы с записями другой таблицы
Ссылается на первичный ключ другой таблицы
Позволяет поддерживать целостность данных между связанными таблицами

Уникальный ключ (Unique Key):


Обеспечивает уникальность значений в одном или нескольких столбцах
Может содержать одно NULL-значение (в отличие от первичного ключа)
В таблице может быть несколько уникальных ключей

16 стр.
SQL

JOIN в SQL — это оператор, который используется для объединения строк из двух или более
таблиц на основе связанного столбца между ними.

Вот краткое описание основных типов JOIN:


Таблица students:
Таблица courses: student_id name course_id
course_id course_name 1 John Doe 101
101 Mathematics 2 Jane Smith 102
102 Physics 3 Mike Brown 103
104 Chemistry 4 Emily Davis NULL

Тип JOIN Описание Пример Результат Объяснение результата

INNER JOIN Возвращает только те строки, SELECT [Link], courses.course_name


name course_name
INNER JOIN возвращает только строки, которые имеют
которые имеют совпадения в обеих FROM students
John Doe Mathematics
совпадения в обеих таблицах (по course_id).

таблицах. INNER JOIN courses


Jane Smith Physics Строки с course_id = 103 и course_id = NULL из students,

ON students.course_id = courses.course_id; а также строка с course_id = 104 из courses не включены.

LEFT JOIN Возвращает все строки из левой SELECT [Link], courses.course_name


name course_name
LEFT JOIN возвращает все строки из левой таблицы (students) и
таблицы и совпадения из правой. FROM students
John Doe Mathematics
совпадающие строки из правой таблицы (courses). Если совпадений
LEFT JOIN courses
Jane Smith Physics
нет, то значения из правой таблицы заменяются на NULL.
ON students.course_id = courses.course_id; Mike Brown NULL

Emily Davis NULL

RIGHT JOIN Возвращает все строки из правой SELECT [Link], courses.course_name


name course_name
RIGHT JOIN возвращает все строки из правой таблицы
таблицы и совпадения из левой. FROM students
John Doe Mathematics
(courses) и совпадающие строки из левой таблицы (students).
RIGHT JOIN courses
Jane Smith Physics
Если совпадений нет, то значения из левой таблицы
ON students.course_id = courses.course_id; NULL Chemistry заменяются на NULL.

FULL JOIN Возвращает все строки из обеих SELECT [Link], courses.course_name


name course_name
FULL JOIN возвращает все строки из обеих таблиц. Если
таблиц. Если в одной из таблиц нет FROM students
John Doe Mathematics
совпадений нет, то отсутствующие значения заменяются на NULL.
совпадений для строки из другой FULL JOIN courses
Jane Smith Physics

таблицы, то в результирующем ON students.course_id = courses.course_id; Mike Brown NULL

наборе данных будут возвращены Emily Davis NULL

NULL-значения для столбцов, NULL Chemistry


которые отсутствуют в этой таблице.

17 стр.
SQL

Вложенные запросы (или подзапросы) в SQL — это запросы, которые находятся внутри
другого запроса. Они позволяют выполнять более сложные операции, извлекая данные на
основе результатов других запросов.
Основные типы вложенных запросов:

1. Подзапрос в SELECT:
Используется для получения данных, которые будут использоваться в основном запросе
Пример:

SELECT name, (SELECT MAX(salary) FROM employees) AS max_salary

FROM employees;

2. Подзапрос в WHERE:
Используется для фильтрации данных на основе результатов другого запроса
Пример:

SELECT name FROM employees WHERE department_id IN (SELECT id FROM departments


WH ERE location = 'New York');

3. Подзапрос в FROM
Используется для создания временной таблицы, которая может быть использована
в основном запросе
Пример:

SELECT avg_salary

FROM (SELECT AVG(salary) AS avg_salary FROM employees GROUP BY department_id) AS dept_avg;


18 стр.
SQL

Создание представлений (VIEW)

Вьюшка (или представление, от англ. "view") в SQL — это виртуальная таблица,

которая создается на основе результата запроса. Вьюшка не хранит данные сама по себе,

а хранит SQL-запрос, который выполняется каждый раз, когда к ней обращаются.

CREATE VIEW view_name AS

SELECT column1, column2

FROM table_name

WHERE condition;

Пример:

CREATE VIEW high_achievers AS

SELECT name, grade

FROM students

WHERE grade = 'A';

19 стр.
SQL

Оконные функции
Оконные функции (или аналитические функции) позволяют выполнять вычисления по
набору строк, которые связаны с текущей строкой, не сводя их к одной строке, как это делает
агрегатная функция. Это полезно для выполнения сложных аналитических запросов.

Основные компоненты оконной функции:


Функция: Это сама оконная функция, например, SUM(), AVG(), ROW_NUMBER(), RANK(),
DENSE_RANK(), LEAD(), LAG() и т.д.
OVER(): Ключевое слово, которое указывает, что функция является оконной.
Внутри OVER() можно указать:
PARTITION BY: Разделяет набор данных на группы (партии).
ORDER BY: Определяет порядок строк в каждой группе.
ROWS или RANGE: Определяет, какие строки включаются в окно.

20 стр.
SQL

Оконные функции
Основные характеристики оконных функций:
Вычисления по окну: Оконные функции работают с набором строк, определяемым с помощью
OVER(), что позволяет выполнять вычисления, такие как суммирование, ранжирование и получение
значений из соседних строк.
Сохранение строк: В отличие от агрегатных функций, которые сводят строки к одной, оконные
функции возвращают по одной строке для каждой строки исходного набора данных.
Группировка и порядок: С помощью PARTITION BY можно разделить данные на группы, а ORDER
BY позволяет задать порядок строк в каждой группе.

21 стр.

Вам также может понравиться