作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图根据一列中表示为 varchar 的二进制代码来选择表中的值,例如“values.todo”= 101,因此我将进行以下 SQL 查询:
SELECT * FROM values WHERE SUBSTRING(todo,2,1);
我知道将子字符串与显式比较会更精确,实际上这就是查询的完成方式,但我的问题是为什么给定的查询将位置 2,1 处的返回值“0”视为 false 并且因此返回 0 结果吗?
最佳答案
根据documentation of MySQL ,这应该有效:
Comparison operations result in a value of 1 (TRUE), 0 (FALSE), or NULL. These operations work for both numbers and strings. Strings are automatically converted to numbers and numbers to strings as necessary.
如果进一步向下滚动,您将看到 select 语句的示例,其中 0 被视为 false,...
关于MySQL 子字符串在 WHERE 子句中使用时返回 false,结果为 '0',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27061393/
我是一名优秀的程序员,十分优秀!