SELECT
users.name as users_name,
users.fruit as users_fruit,
users1.name as users1_name,
users1.fruit as users1_fruit,
-- 为了避免嵌套太多,最后的标点符号就不处理了
regexp_replace(
users.fruit,
regexp_replace(
regexp_replace(users.fruit, '[,,、]+', '|'),
regexp_replace(users1.fruit, '[,,、]+', '|'),
''
),
''
) as result
FROM users
LEFT JOIN users1 ON users.name = users1.name
;
如果硬要做的话,MySQL8.0提供了regexp_replace,MariaDB也有,那么就可以这么写:
当然,低版本的MySQL没有这个函数得自己写,这里有人提供了例子regexp_replace,我找下来就这个可以解决中文的匹配。
希望能帮助到你。