FIND_IN_SET()
函数是为逗号分隔的列表设计的,判断一个字段(其值由逗号分隔的多个子字符串组成)是否包含某个特定的子字符串
eg:表a有一个字段name = hello,hello47 判断是否包含47这个字段(完全包含,非部分包含)
SELECT * FROM a WHERE FIND_IN_SET('47', name);还可以根据包含的数量查询,比如查询name字段包含两个47的
SELECT * FROM a WHERE FIND_IN_SET('47', name) > 2此外,oracle没有内置的函数,需要使用正则表达式
oracle: SELECT * FROM a WHERE REGEXP_LIKE(name, '(^|,)47(,|$)');