Какой SQL-запрос создает таблицу ‘users’ с основными полями?

«Какой SQL-запрос создает таблицу ‘users’ с основными полями?» — вопрос из категории Базы данных и SQL, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Пример создания таблицы в MySQL/PostgreSQL-подобном синтаксисе:

CREATE TABLE users (
    id INT PRIMARY KEY AUTO_INCREMENT, -- SERIAL в PostgreSQL
    username VARCHAR(50) NOT NULL UNIQUE,
    email VARCHAR(100) NOT NULL UNIQUE,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    is_active BOOLEAN DEFAULT TRUE
);

Пояснение полей:

  1. id – первичный ключ с автоматическим увеличением.
  2. username и email – обязательные (NOT NULL) и уникальные (UNIQUE) поля.
  3. created_at – время создания записи, по умолчанию устанавливается текущее.
  4. is_active – флаг с булевым значением TRUE по умолчанию.

Важно: Синтаксис AUTO_INCREMENT (MySQL) отличается от SERIAL или GENERATED ALWAYS AS IDENTITY (PostgreSQL).