mysql触发器操作数应包含2列

标签 mysql decimal-point mysql-error-1241

我的触发器如下所示:

begin
IF ((NEW.tgebucht >= NEW.tteilnmax) AND (NEW.tgebucht!=0) AND (OLD.tstatus=0)) THEN
  SET NEW.tstatus = 1;
ELSEIF ((NEW.tgebucht < NEW.tteilnmax) AND (OLD.tstatus=1)) THEN
  SET NEW.tstatus =0;
END IF;
IF ((0,25*NEW.tteilnmax)>=(NEW.tteilnmax-NEW.tgebucht)) THEN
    SET NEW.trestplatze =1;
END IF;
end

我收到这样的错误:

Operand should contain 2 column(s)

我不太清楚为什么,我知道它与第二个 if 有关,但我无法配置在哪里,有人知道要更改什么吗?我在这里做错了什么吗?任何帮助将不胜感激。

最佳答案

语法看起来不错。但下一行有一个隐藏的错误 -

IF ((0,25*NEW.tteilnmax)>=(NEW.tteilnmax-NEW.tgebucht)) THEN

您应该使用“.”作为点分隔符 -

IF ((0.25*NEW.tteilnmax)>=(NEW.tteilnmax-NEW.tgebucht)) THEN

关于mysql触发器操作数应包含2列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24197534/

相关文章:

MySQL 错误 1241 (21000) : Operand should contain 1 column(s)

MySQL INSERT 错误操作数应包含 1 列

mysql - 优化查询 - 从同一个子查询中选择 COUNT 和 SUM

mysql - INSERT ... ON DUPLICATE KEY - 如何在非主键上执行此操作?

MySQL Escape查询结果中的双引号

php - 与 Mysql 和 PHP 的多对多关系

c++ - 在 CString.Format() 的区域设置中使用小数点分隔符

PHP:将数字四舍五入为 16 位小数

ruby-on-rails - Rails 3 GPS 坐标的 float 或十进制数

mysql - 错误 #1241 在 Mysql Workbench 中操作数应包含 1 列