mysql错误#1241

xfb7svmp  于 2021-06-24  发布在  Mysql
关注(0)|答案(1)|浏览(270)

这是我的sql:

UPDATE seg_guidesdata 
SET cash_box=(cash_box-(425,0)) 
WHERE idseg_guidesdata=(SELECT fk_guidedata FROM users WHERE idusers=180);

很简单,但我知道错误

1241-操作数应包含1列。

我明白这个错误的意思,但我不知道为什么我在这里得到它。子查询实际返回1行1列。我查过了:
phpmyadmin返回子查询:

有人知道我为什么会犯这个错误吗?
谢谢

56lgkhnf

56lgkhnf1#

sql查询中文本的小数点分隔符是点( . ),而不考虑任何区域设置或格式设置。因此,您必须将数字425,0表示为 425.0 :

UPDATE ... SET cash_box=(cash_box-(425.0)) WHERE ...

错误消息来自被解释为列分隔符的逗号,这使得 (425,0) 看起来像是两列。

相关问题