以下是我的查询
select c.*,u.fullname,u.userphoto from chat_messages
c left join us_signup u on u.id=c.fromid
where c.fromid in(?,?) and c.toid in(?,?) and c.jobid=?
order by c.received_date asc
chat_messages表中有一个名为“readi”的列我想要更新
我已经提到了:
How to UPDATE and SELECT at the same time in MySQL
Is there a way to SELECT and UPDATE rows at the same time?
等..但无法修改我的查询..
答案 0 :(得分:1)
The answers you linked to are both for MS SQL Server (In the MySQL tagged question read the comments). In MySQL there is no OUTPUT clause or whatever. The only way I can think of is using user-defined variables.
For a single row:
SET @v := NULL;
UPDATE your_table
SET column_name = 'whatever'
WHERE another_column = 'foo'
AND @v := column_you_want_to_store
LIMIT 1;
SELECT @v;
For multiple rows:
SET @v := '';
UPDATE your_table
SET column_name = 'whatever'
WHERE another_column = 'foo'
AND @v := (SELECT CONCAT_WS(', ', column_you_want_to_store, @v));
SELECT @v;