Встречается на собеседованиях • сегодня

Какие есть типы отношений в SQL

В SQL существуют 4 основных типа отношений между таблицами:

  1. Один к одному (1:1)
    Каждой записи в таблице A соответствует только одна запись в таблице B.

    sql
    CREATE TABLE User (
        id INT PRIMARY KEY,
        name VARCHAR(100)
    );
    
    CREATE TABLE Passport (
        id INT PRIMARY KEY,
        user_id INT UNIQUE,
        FOREIGN KEY (user_id) REFERENCES User(id)
    );
  2. Один ко многим (1:N)
    Одна запись в таблице A может ссылаться на несколько записей в таблице B.

    sql
    CREATE TABLE Department (
        id INT PRIMARY KEY,
        name VARCHAR(100)
    );
    
    CREATE TABLE Employee (
        id INT PRIMARY KEY,
        dept_id INT,
        FOREIGN KEY (dept_id) REFERENCES Department(id)
    );
  1. Многие ко многим (N:M)
    Реализуется через промежуточную таблицу.

    sql
    CREATE TABLE Student (
        id INT PRIMARY KEY
    );
    
    CREATE TABLE Course (
        id INT PRIMARY KEY
    );
    
    CREATE TABLE Student_Course (
        student_id INT,
        course_id INT,
        PRIMARY KEY (student_id, course_id),
        FOREIGN KEY (student_id) REFERENCES Student(id),
        FOREIGN KEY (course_id) REFERENCES Course(id)
    );
  2. Самореферентная связь
    Таблица ссылается сама на себя (например, иерархия сотрудников).

    sql
    CREATE TABLE Employee (
        id INT PRIMARY KEY,
        manager_id INT,
        FOREIGN KEY (manager_id) REFERENCES Employee(id)
    );
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы