Какая разница между DROP и TRUNCATE?
DROP - удаляет всю таблицу
TRUNCATE - удаляет только данные таблицы
Что такое case function?
Возвращение значений в зависимости от условия
CASE проверяет истинность набора условий и в зависимости от результата проверки может возвращать тот или иной результат.
Имеет два формата (оба поддерживают дополнительный аргумент ELSE):
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
ENDПример:
SELECT
column_name,
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
ELSE default_result
END AS new_column_name
FROM table_name;Что такое collation?
Collation - параметр указывает SQL серверу, как нужно сортировать и сравнивать строки. Например, разные или нет строки “Apple” и “apple” зависит от указанного Collation.
Типы репликации в SQL Server?
Репликация- набор технологий копирования и распространения данных и объектов БД между БД, а также синхронизации БД для поддержания согласованности.
Self Join
SELF JOIN - используется для объединения таблицы с ней самой таким образом, будто это две разные таблицы, временно переименовывая одну из них. Нужен тогда, когда у разных полей одной таблицы могут быть одинаковые значения. Например, один и тот же участник музыкальной группы может быть и вокалистом, и, например, клавишником.
Отличия БД от СУБД:
Типы БД:
Типы СУБД:
Типы отношений в SQL
Нормализация
это процесс организации данных для снижения избыточности и улучшения целостности.
Избыточность
SQL
относится к повторению данных в разных таблицах, что может привести к несоответствию и ошибкам при обновлении. Нормализация помогает уменьшить эту избыточность, распределяя данные так, чтобы каждый элемент информации был сохранен только в одном месте. Это обеспечивает более чистую и эффективную структуру базы данных.
Целостность
SQL
относится к поддержанию точности и надежности информации. Это включает обеспечение того, чтобы данные оставались последовательными и верными во всех таблицах базы данных. Целостность обеспечивается правилами, которые предотвращают ввод некорректных данных и поддерживают взаимосвязь между различными частями данных.
Нормальная форма
это уровень, на котором организованы данные, чтобы минимизировать избыточность и улучшить целостность. Каждая нормальная форма определяет набор правил для структурирования данных, и существует несколько уровней нормальных форм. Переход от одной нормальной формы к другой помогает сделать базу данных более организованной, уменьшая повторение и улучшая управление данными.
0NF (Нулевая нормальная форма):
нет структуры; данные могут быть дублированы и неструктурированы.
1NF (Первая нормальная форма):
каждая запись уникальна, и каждый атрибут содержит только атомарные значения.
2NF (Вторая нормальная форма):
Таблица находится во второй нормальной форме, если она уже в 1NF и все неключевые атрибуты полностью зависят от первичного ключа, а не от части его.
Денормализация
это процесс, используемый для оптимизации производительности базы данных путем добавления избыточности.
Это может включать объединение таблиц, чтобы уменьшить количество соединений (joins), или добавление избыточных копий данных в одной таблице для ускорения чтения за счет потенциально замедленной записи и увеличения использования пространства. Это противоположный нормализации подход, который часто используется в больших базах данных, где скорость чтения критически важна.
INTEGER (INT):
Типы данных SQL
age INTFLOAT и DOUBLE:
Типы данных SQL
price FLOATилиaverage_score DOUBLEVARCHAR
Типы данных SQL
Пример: first_name VARCHAR(50)
Этот тип данных предназначен для хранения текстовых строк переменной длины, таких как имена.
CHAR:
Типы данных SQL
gender CHAR(1)DATE:
Типы данных SQL
birth_date DATEENUM:
Типы данных SQL
Пример: status ENUM(‘active’, ‘inactive’, ‘pending’)
ENUM представляет собой перечисление значений и используется, когда столбец может иметь только одно из ограниченного множества значений.
BOOLEAN:
Типы данных SQL
Пример: is_active BOOLEAN
BOOLEAN предназначен для хранения логических значений, таких как true или false.