SQL中的FIND_IN_SET()函数
时间: 2023-10-13 08:02:01 浏览: 100
FIND_IN_SET()函数是一种用于在逗号分隔的字符串中查找某个值的函数。它返回要查找的值在字符串中的位置。
下面是FIND_IN_SET()函数的基本语法:
```
FIND_IN_SET(value, string_list)
```
其中,value是要查找的值,string_list是逗号分隔的字符串。
函数返回一个整数值,表示要查找的值在字符串中的位置。如果找到了,则返回其位置(从1开始),如果未找到,则返回0。
例如,假设我们有以下的一个表格"students":
```
+----+-------------------+
| id | courses |
+----+-------------------+
| 1 | Math,Science |
| 2 | History,English |
| 3 | Math,History |
+----+-------------------+
```
我们可以使用FIND_IN_SET()函数来查找包含特定课程的行:
```
SELECT *
FROM students
WHERE FIND_IN_SET('Math', courses) > 0;
```
上述查询将返回包含"Math"课程的行:
```
+----+-------------------+
| id | courses |
+----+-------------------+
| 1 | Math,Science |
| 3 | Math,History |
+----+-------------------+
```
请注意,FIND_IN_SET()函数对于逗号分隔的字符串非常有用,但它不适用于其他类型的分隔符。如果您使用的是不同的分隔符,可能需要使用其他方法来实现类似的功能。
阅读全文
相关推荐

















