SQL INSERT INTO с подзапросом и значением

есть ли способ использовать комбинацию жестких значений и подзапроса для вставки в таблицу с помощью одной команды?

например:

INSERT INTO suppliers (supplier_id, supplier_name, supplier_type)
SELECT account_no, name
FROM customers
WHERE city = 'San Diego';

мне нужно supplier_type быть 3. Итак, могу ли я сделать следующее Для второй строки?

SELECT account_no, name, supplier_type = 3

supplier_type отсутствует в таблице customers

2 ответов


просто добавьте его в свой SELECT поля.

INSERT INTO suppliers (supplier_id, supplier_name, supplier_type)
SELECT account_no, name, 3 AS supplier_type
FROM customers
WHERE city = 'San Diego';

еще проще, просто заполните поле значением, даже не нужно AS:

INSERT INTO suppliers (supplier_id, supplier_name, supplier_type)
SELECT account_no, name, 3
FROM customers
WHERE city = 'San Diego';