mysql过程 - 在重新格式化日期的第二个查询中使用结果

时间:2012-08-23 20:37:41

标签: mysql variables date format procedure

我需要创建一个程序: 1)从表中的字段中选择一些文本并将其存储在变量中 2)更新相同的记录字段,仅将yyyymmdd格式的日期加上附加的文本输入添加到过程中 ......这样的......

delimiter //
create procedure table1.sp_updateComment (IN inputIP varchar(15), IN inputAccount varchar(10))
begin
start transaction;
select comment from table1 where ip = inputIP;
update table1 set comment = '<comment from above> + yyyymmdd + inputAccount', status = 'u' where ip = inputIP;
commit;
end;
//
delimiter ;
;

提前感谢:)

1 个答案:

答案 0 :(得分:2)

使用SELECT...INTO选择一些值并将其存储在变量中:

SELECT comment INTO @my_comment_variable FROM table1 WHERE ip = inputIP;

但是,在您的情况下似乎没有必要。尝试使用CONCAT

UPDATE table1
SET comment = CONCAT(comment, DATE_FORMAT(CURDATE(), "%Y%m%d"), inputAccount'), status = 'u'
WHERE ip = inputIP;