我想在mysql
中匹配
2个逗号分隔的字符串
,
测试字符串
=> 家政、清洁、其他
。
| skills |
+-------------------------------------+
| Housekeeping,Cleaning,Sweeping |
+-------------------------------------+
| Housewives,Beautician,Cleaning | AGAINST `Housekeeping,Cleaning,Other`
+-------------------------------------+
| PHP,Laravel,Other |
+-------------------------------------+
| Housekeeping,housekeeping,other |
+-------------------------------------+
MUST MATCH => All the `rows`
我听说过 LOCATE
语法,但不知道如何使用。
SELECT * FROM jobs_posted_by_employer WHERE skills [don't know]
我已将我的表
在线用于查询执行
!!!
最佳答案
使用正则表达式(您需要使用 PHP 重新格式化您的输入):http://sqlfiddle.com/#!9/b1931/13
select
*
from
jobs_posted_by_employer
where
skills regexp '(^|,)Housekeeping|Cleaning|Other(,|$)'
或者没有 PHP 重新格式化:http://sqlfiddle.com/#!9/b1931/40
select
*
from
jobs_posted_by_employer
where
skills regexp concat(
'(^|,)',
replace('Housekeeping,Cleaning,Other',',','|'),
'(,|$)'
)
关于php - 如何将逗号分隔的字符串与另一个逗号分隔的字符串匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47177950/