1

我在 MySQL 中寻找类似以下的内容:

SELECT Field1 
FROM MyTable 
AFTER UPDATE 
SET Field2 = 'myvalueX' 
WHERE Field3 = 'myvalueY';

上述假设语句为受语句更新部分影响的每一行返回 Field1 的值。

MySQL中是否存在这样的语句?

4

2 回答 2

2

执行以下操作:

START TRANSACTION;
UPDATE ....
SELECT ....
COMMIT;
于 2013-03-22T14:55:35.580 回答
1

如果您只更新一行,使用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;
于 2015-12-23T07:25:11.873 回答