SQL
SQL Введение·Глава 03

Часть бесплатной книги «SQL Введение» · Перейти к содержанию

Типы данных

При создании таблицы необходимо указать, какие данные будут храниться в каждом столбце.

Для этого используются типы данных.

Тип данных определяет, какие значения можно записывать в столбец таблицы.

Рассмотрим таблицу игроков:

Столбец Тип данных
id INT
nickname VARCHAR(50)
email VARCHAR(100)
level INT
rating INT
win_rate DECIMAL(5,2)
last_login DATE
registration_date DATE

Каждый столбец хранит определенный тип информации, поэтому для него выбирается подходящий тип данных.

Целые числа

Для хранения целых чисел используются числовые типы данных.

В нашей таблице это:

id INT
level INT
rating INT
wins INT
losses INT

Примеры значений:

level
1
25
100

Тип INT используется очень часто и подходит для хранения большинства целых чисел.

Строковые данные

Для хранения текста используются строковые типы данных.

В нашей таблице это:

nickname VARCHAR(50)
email VARCHAR(100)
city VARCHAR(50)
country VARCHAR(50)
rank_title VARCHAR(50)
guild VARCHAR(50)

Примеры значений:

nickname
Dragon
Shadow
Warrior77

Тип VARCHAR хранит строки переменной длины.

 

Например:

VARCHAR(50)

Число в скобках указывает максимальное количество символов, которое может храниться в поле.

 

Для столбца:

nickname VARCHAR(50)

можно сохранить ник длиной до 50 символов.

Числа с дробной частью

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

В нашей таблице используется:

win_rate DECIMAL(5,2)

Примеры значений:

win_rate
52.30
75.50
100.00

Тип:

DECIMAL(5,2)

означает:

  • всего можно хранить 5 цифр;
  • из них 2 цифры находятся после десятичной точки.

Например:

99.99
12.50
100.00

Такой тип данных часто используется для процентов и денежных значений.

Дата

Для хранения даты используется тип данных:

DATE

В нашей таблице это:

last_login DATE
registration_date DATE

Примеры значений:

2025-01-15
2025-06-20
2026-01-01

Формат даты:

ГГГГ-ММ-ДД

Например:

2026-06-25

NULL

Некоторые поля могут не содержать значения.

В таком случае используется специальное значение:

NULL

Например, игрок может еще не состоять в гильдии:

nickname guild
Dragon NULL

Или игрок еще не получил звание:

nickname rank_title
Shadow NULL

NULL означает, что значение отсутствует или пока неизвестно.

 

Важно понимать разницу:

Значение Смысл
NULL значение отсутствует
‘’ пустая строка
0 число ноль

Это разные значения.

 

Что важно запомнить

  • Тип данных определяет, какие значения можно хранить в столбце.
  • Для целых чисел в нашей таблице используется тип INT.
  • Для текста используется VARCHAR.
  • Для процентов побед используется DECIMAL.
  • Для хранения даты используется DATE.
  • NULL означает отсутствие значения.