**需求:**表中ancestors字段表示数据层级,当想匹配层级中含有13的数据但是不能匹配到131这种数据.
思路:
首先想到用like匹配,发现数据前后没有逗号,不好去匹配,然后想到了正则,发现SQL中regexp不支持复杂正则,例如"(?<!\d)13(?!\d)",最后想到了改变字段ancestors值,统一格式后再like匹配
SQL正则匹配报错换个思路解法
最新推荐文章于 2023-10-20 14:35:44 发布
**需求:**表中ancestors字段表示数据层级,当想匹配层级中含有13的数据但是不能匹配到131这种数据.
思路:
首先想到用like匹配,发现数据前后没有逗号,不好去匹配,然后想到了正则,发现SQL中regexp不支持复杂正则,例如"(?<!\d)13(?!\d)",最后想到了改变字段ancestors值,统一格式后再like匹配