Добавление в бд по критерию
В общем хочу добавить данные в бд по критерию, т.е. допустим insert into Table (name) values("value") where id=2, но в этой команде нельзя использовать where. Как быть?
Ответы (1 шт):
Автор решения: Akina
→ Ссылка
Надо использовать не INSERT .. VALUES, а INSERT .. SELECT, который допускает WHERE clause в SELECT-части.
То есть формально это будет
insert into Table (name)
SELECT "value"
where id=2
Понятно, что именно этот запрос не будет выполнен - ибо сервер вполне ожидаемо спросит "А что это за id и откуда его брать?". И будет прав - в моём коде в предложении SELECT отсутствует источник данных (FROM).
Хотя если дело происходит в процедуре/функции, то это может быть локальная переменная, тогда запрос выполнится.