我在 MySQL 中寻找类似以下的内容:
SELECT Field1
FROM MyTable
AFTER UPDATE
SET Field2 = 'myvalueX'
WHERE Field3 = 'myvalueY';
上述假设语句为受语句更新部分影响的每一行返回 Field1 的值。
MySQL中是否存在这样的语句?
执行以下操作:
START TRANSACTION;
UPDATE ....
SELECT ....
COMMIT;
如果您只更新一行,使用last_insert_id()
来实现Atomic Select and Update Together:
update <table> set status=1,id=last_insert_id(id) where status=0 limit 1;
select * from <table> where id=last_insert_id() limit 1;