背景:数据库字段存放的值采用逗号拼接。例如:“a,b,c,d”
有一个需求,需要查询部门数据,即该字段包含部门下任意一个人员就要查出来。所以逻辑类似like in 操作。
通过百度,找到一个函数FIND_IN_SET();
例子:FIND_IN_SET(“a”,“a,b,c,d”);
即在第二个参数中匹配到第一个参数,则查出来。
SELECT * from business_table t,person p WHERE p.dept_id = ‘D1’ AND FIND_IN_SET(p.id,t.personIds);