原文地址: MySQL IN 和 NOT IN () 空列表报错
欢迎访问我的博客: http://blog.duhbb.com/
- 如果你主动在 SQL 语句中写
IN (), 则会报错;常见于 MyBatis 或者自己拼写的 SQL 语句中, 如果使用字面量一定要注意这一点; - 如果你是
IN (SELECT xxx FROM xxx)这种的话, 即使SELECT xxx FROM xxx为空也不会报错.
比较好奇的是, 感觉这个挺简单的, 为啥 MySQL 就不处理一下呢?
要是我读懂了 MySQL 的源码, 我就把这个特性加上去, 嘿嘿!
本文探讨了在SQL语句中使用IN和NOT IN操作符时遇到的空列表报错问题,特别是当直接使用字面量时。尽管在IN(SELECT...)结构中空列表不会引发错误,作者对于MySQL不处理空列表报错的情况表示好奇,并表达了修改源码以解决这一问题的兴趣。
977

被折叠的 条评论
为什么被折叠?



