gpt4 book ai didi

mysql - 为什么 mysql 在应该返回 null 时返回一些行?

转载 作者:行者123 更新时间:2023-11-29 00:46:32 25 4
gpt4 key购买 nike

这是myTable的结构

----------------
|id|info1|info2|
----------------
|0 |abcde|fghij|
|1 |qwert|yuopa|
----------------

这是我调用的查询:

SELECT * FROM `myTable` WHERE `id` = 'a'

它返回第一行是

|0 |abcde|fghij|

这是怎么回事?通常 id 是一个整数,但我错误地将它输入为字符串,但我仍然得到了结果。

最佳答案

MySQL 尝试将 'a' 转换为整数。该字符串不包含任何数值,因此转换结果为 0。这就是 MySQL 进行转换的方式。

SELECT 0 = 'a';

以上查询返回 1 (TRUE)。

SELECT CAST('a' AS SIGNED INTEGER);

上述查询返回 0

关于mysql - 为什么 mysql 在应该返回 null 时返回一些行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10336859/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com