Mysql IF长度>然后更新示例

时间:2012-12-09 20:22:15

标签: mysql sql

我试图说一个变量是否有一个长度来更新一个表。这就是我所拥有的,但我不确定如何构建查询。

if(@CName length > 0) then 
  update mytableset IDName= @CName where mytable.ID = @CID end if;

1 个答案:

答案 0 :(得分:5)

不需要IF/ELSE逻辑 - 您可以在WHERE子句中使用该变量。使用LENGTH()字符串函数和布尔值AND

UPDATE mytable SET IDName = @CName WHERE LENGTH(@CName) > 0 AND mytable.ID = @CID

为了进行更新,两个条件都必须为true,但WHERE子句条件不一定必须应用于表列。它们可以是任何计算结果为true或false的任意表达式。