Выполнить SELECT попутно выполняя UPDATE

Рейтинг: 0Ответов: 1Опубликовано: 22.06.2023

Есть таблица типа такой:

create table `Notifications` ( `From` text, `To` text, `State` integer ) ;

При выборке из таблицы необходимо изменить поле State. В моём случае я сначала делаю SELECT с LIMIT 1, чтоб проверить наличие записей, затем делаю UPDATE, чтоб выставить везде нужный State и потом уже вызываю ещё раз SELECT, чтоб выбрать данные из таблицы и начать с ними работать.

Есть варианты как изменить содержимое State при выборке данных из таблицы?

Ответы

▲ 1

Пинок в сторону RETURNING был верным. sqlite поддерживает его для UPDATE тоже, таким образом запрос

update `Notifications` set `State` = 1 returning `From`, `To` ;

Делает то, что мне нужно.