А что такое SERIAL и чем он отличается от INT?

В SQL, когда вы создаёте поле для идентификатора (id), ключа в таблице, часто используется либо INT, либо SERIAL. Они похожи, но не совсем одно и то же.

  • INT — просто числовой тип данных. Если вы хотите, чтобы значения увеличивались автоматически (1, 2, 3, …), вам придётся сами этим управлять или использовать дополнительный механизм.
  • SERIAL — это удобный ярлык (синтаксический сахар), который говорит базе: «Создай мне INT-поле, и настрой так, чтобы оно автоматически увеличивалось при каждом новом INSERT.»

То есть, когда вы пишете:

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

Но тут мы упираемся в диалекты SQL. На практике вы будете пользоваться какой то конкретной реализацией SQL — например, MySQL, PostgreSQL или MSSQL.

В PostgreSQL полный запрос будет выглядеть так:

Отдельно объявляется т.н. последовательность (SEQUENCE), и потом она используется для столбца users.id.

В MySQL это выглядит иначе:

Мало букафф? Читайте есчо !

JOIN vs UNION — в чём разница?

Июль 4, 2025 г.

Эти два оператора в SQL на первый взгляд делают похожее — они "объединяют" таблицы. Но делают это по-разному и для разных целей. Вкратце: JOIN объединяет по горизонтали (добавляются столбцы из разных таблиц), тогда как UNION объединяет по вертикали ...

Читать

Что такое CROSS JOIN

Июль 4, 2025 г.

Конструкция CROSS JOIN в SQL — это один из видов JOIN, который создаёт декартово произведение двух таблиц: каждая строка из первой таблицы соединяется со всеми строками второй. Если: Таблица A содержит m строк, Таблица B содержит n строк, ...

Читать

Группировка строковых значений в выборке из базы данных

Сентябрь 30, 2018 г.

Группировка по полю, содержащему число, используется значительно чаще, чем группировка по текстовому полю. Я думаю, вы использовали функции вроде AVG(), ...

Читать

НФ не требуют введения суррогатных ключей?

Июль 12, 2025 г.

Сами по себе нормальные формы (НФ) не требуют введения суррогатных (искусственных) ключей, но на практике их часто используют при нормализации, особенно начиная со 2НФ и 3НФ. Давайте разберём подробнее. Что такое суррогатный ключ? Суррогатный ...

Читать
 

Комментарии к «А что такое SERIAL и чем он отличается от INT?»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: