列上的FIND_IN_SET?是否有意义?

时间:2018-06-08 10:53:16

标签: mysql where find-in-set

我偶然发现了一个奇怪的表情,这对我来说毫无意义。

SELECT * FROM `table` WHERE FIND_IN_SET('string', `column`);

为什么不:

SELECT * FROM `table` WHERE `column`='string';

我认为FIND_IN_SET用于在逗号分隔的字符串列表中查找字符串。是否有情况我可以从“FIND_IN_SET” - 列表达式而不是简单的WHERE中受益?

1 个答案:

答案 0 :(得分:0)

FIND_IN_SET通常以其他方式使用:从逗号分隔的参数列表中查找列值,因为在逗号分隔列表中存储值通常不是一个好主意:

select * 
FROM `table` 
WHERE FIND_IN_SET(`column`, '1,2,3,4,5');