我想要实现的是根据mysql中的select查询结果更新数据库中的列。
例如:
SELECT id, value, t_stamp FROM table_name ORDER BY id DESC Limit 1
那么SELECT语句的值就是
id value t_stamp
1 apple 2013-01-01
2 dog 2013-01-01
那么SELECT的值将从2开始。但我想得到'value'列的值,并将其用作UPDATE的参数
UPDATE table_name SET newvalue = value_from_select
那么newvalue的值就是狗。
我如何在Mysql中执行此操作?
答案 0 :(得分:0)
这是你在找什么?
select id,@b:=value,t_stamp from table_name ORDER BY id DESC Limit 1;
UPDATE table_name SET value = @b where id=2;
您可以使用@var:=运算符将检索到的数据存储在用户定义的变量中,该变量稍后可以在更新查询中替换,如上所示。 您还可以在检索数据之前使用SET @a = 0或0.0或''来定义其类型,以避免混淆。