小编Joh*_*sen的帖子

将逗号分隔的字符串与数字进行比较时MySQL的奇怪行为

我在使用MySQL时遇到了一些奇怪的行为.基本上我有这样一个表:

ID     string
1      14 
2      10,14,25
Run Code Online (Sandbox Code Playgroud)

为什么这个查询会拉出id 2?

SELECT * FROM exampletable where string = 10
Run Code Online (Sandbox Code Playgroud)

当然它应该寻找完全匹配,因为这只会拉出id 1:

SELECT * FROM exampletable where string = 14
Run Code Online (Sandbox Code Playgroud)

我知道FIND_IN_SET,我发现奇怪的是第一个查询甚至没有任何东西.它的行为类似于这个查询:

SELECT * FROM exampletable where string LIKE '10%'
Run Code Online (Sandbox Code Playgroud)

mysql sql string comparison numbers

2
推荐指数
1
解决办法
65
查看次数

标签 统计

comparison ×1

mysql ×1

numbers ×1

sql ×1

string ×1