温馨提示×

MySQL中FIND_IN_SET的正确用法

小樊
82
2024-09-13 18:30:38
栏目: 云计算

FIND_IN_SET() 是 MySQL 函数,它用于在一个以逗号分隔的字符串列表中查找一个特定值的位置

FIND_IN_SET() 函数的语法如下:

FIND_IN_SET(value, set_string)

其中,value 是要在 set_string 中查找的值,set_string 是包含逗号分隔的值列表的字符串。

以下是一个使用 FIND_IN_SET() 函数的示例:

假设我们有一个名为 students 的表,其中包含学生的 ID、姓名和课程列表(以逗号分隔)。

id name courses
1 Alice Math,English,Science
2 Bob English,History
3 Carol Science,Geography

现在,我们想要找到选修了 “Math” 课程的所有学生。我们可以使用 FIND_IN_SET() 函数来实现这一目标:

SELECT * FROM students WHERE FIND_IN_SET('Math', courses) > 0;

这将返回以下结果:

id name courses
1 Alice Math,English,Science

在这个例子中,FIND_IN_SET('Math', courses) 返回非零值(即找到了 “Math”),因此我们得到了选修了 “Math” 课程的学生。

0