欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MySQL函数find_in_set介绍

程序员文章站 2024-03-23 13:07:28
...

转载请注明来源-作者@loongshawn:http://blog.csdn.net/loongshawn/article/details/78611636,建议读者阅读原文,确保获得完整的信息

场景介绍

人有时会身兼数职,需要查找出其中担任某一职务的都有哪些人,如下面position字段,不同的职务用数字表示,多个职务以逗号隔开。

MySQL函数find_in_set介绍

先要查找出担任1职务的人员,通过以下两种方式来查询。

方式一

采用模糊查询,匹配出1职务的记录,如下SQL:

select * from user where position like '%1%'

查询结果如下,仔细观察你会发现position为10的也被查出来了,但这个不符合业务要求。

MySQL函数find_in_set介绍

方式二

采用MySQL的原生函数find_in_set(str,array)来查询,SQL如下:

select * from user where find_in_set(1,position)

查询结果如下,符合要求。

MySQL函数find_in_set介绍

函数介绍

FIND_IN_SET(str,strlist),注意其中strlist只识别英文逗号。

MySQL函数find_in_set介绍

https://dev.mysql.com/doc/refman/5.7/en/string-functions.html#function_find-in-set

相关标签: 函数 mysql