mysql update and更新有问题,为什么mysql不报语法错误?

mysql的这个更新语句有问题,没什么疑问,我的疑问是为什么mysql不报语法错误?


mysql
update
2023-06-02 13:12:26
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
蒹葭白露为双

因为语法没问题,MySQL 会按照运算符优先级来解析这条语句,实际是:

UPDATE `a` SET `name` = ('123' AND `age` = 20);

赋值语句结果为 ​​true​​,一个非空的字符串转为 Boolean 也为 ​​true​​,两个 ​​true​​ 做逻辑和运算,结果还是 ​​true​​。

所以你这条语句实际上等效于:

UPDATE `a` SET `name` = true;
分享
微博
QQ
微信
回复
2023-06-02 14:41:44
相关问题
HarmonyOS语法错误哪些?
248浏览 • 1回复 待解决
安装MySQL为什么要创建MySQL用户?
2135浏览 • 1回复 待解决
Mysql 驱动为什么要依赖 protobuf?
3872浏览 • 1回复 待解决
mysql 查询排序问题了解的吗?
2175浏览 • 1回复 待解决
MySQL escape方法问题了解的吗?
2455浏览 • 1回复 待解决
Mysql geojson 查询的问题懂的吗?
3127浏览 • 1回复 待解决
关于mysql分区的问题懂的吗?
2281浏览 • 1回复 待解决