我有一个 products
表,下一个 id
列
我正在使用 IN
函数而不是 WHERE
因为我希望有多个产品 ID
在这种情况下,只有一个产品 ID。
SELECT id FROM `products` WHERE id IN (00010001)
上面的sql查询返回
但这不是我所期望的,我只期望第一行 00010001
。
我需要准确的值,如何使用 IN
函数实现?
最佳答案
您的 id
是一个字符串,因此您需要进行字符串比较:
SELECT proidxxx
FROM `products`
WHERE id IN ('00010001')
您正在混合类型,因此 MySQL 会默默地将 id
转换为数字。它匹配任何 id
,其中初始数字 - 当转换为数字时 - 等于 10001
。
关于mysql - 如何使用 IN() 函数搜索精确值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52709944/