mysql 自定义变量

  • mysql中一些自定义变量,可以有一些特殊的玩法帮助完善代码

根据创建时间生成序值

set @row_number := 0; --声明变量row_number 初始值为0
select *,(@row_number := @`row_number`+1) as r -- 每条数据会在后面加1,这是一个续值功能
from t_name
order by create_time;

image-1657986085178

更新数据中的时间戳 并且获取之前设置的时间戳

set @n:= (select c.update_time from contents c where post_id = 79 limit 1);
update contents c set update_time = now()
where c.post_id = 79;
select @n;

image-1657987608892