SQL INSERT. Добавление id записи из другой таблицы.

SQL INSERT. Добавление id записи из другой таблицы.

Решение типичной задачи INSERT SQL SUBQUERY. Решается при помощи подзапроса в INSERT.

Достаточно распространенная задача на SQL, при insert данных в одну таблицу присваивать одному из полей id из другой таблицы. Итак, имеем две таблицы:

products_table:
product_id, name, category_id

categories_table:
category_id, name.

Задача - при добавлении (insert) данных в первую таблицу необходимо, что бы значение category_id бралось из второй.

Решение задачи:

insert into products_table (name, category_id)
values(
        'ИМЯ ПРОДУКТА',
        (select id from categories_table where name='ИМЯ_КАТЕГОРИИ')
        );

Вроде и все, крайне просто, но если необходимость в sql возникает 2 раза в год и 7 раз за последние три года - то очень многое забывается:)