php - 如何将逗号分隔的字符串与另一个逗号分隔的字符串匹配

标签 php mysql sql database

我想在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]

我已将我的在线用于查询执行!!!

这是我的查询:http://sqlfiddle.com/#!9/b1931

最佳答案

使用正则表达式(您需要使用 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/

相关文章:

PHP/mySQL 和 Google map 地理编码

Phpstorm ftp设置

php - PDO 中是​​否有 mysql_result($result, $i, 'ColumnName' ) 的等效项

php - CakePHP 2.0 - 从某个结果集中获取具有特定参数的结果计数

mysql - 如何在gorm中串连?

sql - 如何通过未知文件在SQL Server中设置数据库?

仅当没有匹配项时才加入 SQL

php - MySQL 大圆距离(半正矢公式)

python - 使用 mysqldb 在 python 中构建类

php - 使用 php mysqli 将时间戳提交到 mysql 数据库