gpt4 book ai didi

mysql - mysql 中关于过程参数的动态 "column"更新

转载 作者:行者123 更新时间:2023-11-29 11:28:42 24 4
gpt4 key购买 nike

我想在名为 my_proc(param) 的过程中更新表 T1 的列。我想做这样的事情:

if param=1 then UPDATE T1 SET C1="SOME VALUE"
if param=2 then UPDATE T1 SET C2="SOME VALUE"
if param=3 then UPDATE T1 SET C3="SOME VALUE"
...

CNN 有人建议,适当的方法应该是什么?

最佳答案

你的代码基本上是正确的。正确的语法是:

if param = 1 then
UPDATE T1
SET C1 = 'SOME VALUE';
elseif param = 2 then
UPDATE T1
SET C2 = 'SOME VALUE';
elseif param = 3 then
UPDATE T1
SET C3 = 'SOME VALUE'
end if;

如果您愿意,可以将其写为一个UPDATE:

UPDATE t1
SET C1 = (case when param = 1 then 'SOME VALUE' else C1 end),
C2 = (case when param = 2 then 'SOME VALUE' else C2 end),
C3 = (case when param = 3 then 'SOME VALUE' else C3 end);

关于mysql - mysql 中关于过程参数的动态 "column"更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37776404/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com