INSERT INTO … SELECT

246
26 ноября 2016, 20:13

Что делают эти операторы в пределах одного выражения? Впервые наткнулся на подобный синтаксис. Вроде:

INSERT INTO tblTemp2 (fldID) SELECT tblTemp1.fldOrder_ID
FROM tblTemp1 WHERE tblTemp1.fldOrder_ID > 100;

Вставляет записи по условию, выбирая их?

И подходит ли подобный синтаксис сейчас? Нашел в одном из руководств, но вычитал, что для MySQL не подходит. Правда ли это?

SELECT val1+val2 INTO 't' FROM `my` LIMIT 0,1;
Answer 1

Сначала выполняется запрос SELECT ... WHERE ..., и его результат tblTemp1.fldOrder_ID добавляется в таблицу tblTemp2 в поле fldID

Второй вариант, который вы указали не будет работать, так как нарушена структура SQL-синтаксиса

READ ALSO
Получение ID последнего добавленного елемента

Получение ID последнего добавленного елемента

Как получить id последнего добавленного елемента? Нашел следующую конструкцию SELECT LAST_INSERT_ID() НО на сколько она безопасна?

275
Как соединить несколько таблиц sql

Как соединить несколько таблиц sql

Имеется две таблицы: user, proc_leader

277
MySQL и дублирование первичного ключа

MySQL и дублирование первичного ключа

ЗдрафствуйтеУ меня такой вопрос

210
JOINы в MySQL специфика применения

JOINы в MySQL специфика применения

ЗдравствуйтеСтолкнулся с вопросом, на который не совсем понимаю ответ

332