如何通过使用类似查询或其他方式匹配列中的前两个字符来从数据库获取数据

时间:2018-01-16 12:17:52

标签: mysql database laravel eloquent

我正在尝试通过匹配前两个字符从数据库中获取数据,或者字符显示在逗号,

之前
id | company_name | country_id | city_id | main_category
 -------------------------------------------------------
 1 | ABC          |   1        |  2      |  12,3,6
 2 | XYZ          |   1        |  2      |  1,12,9

我想要的是当用户输入为12并且12结果中存在main_category than时,应显示以下结果,但12应退出在第一个逗号之前或者我们可以说前两个字符

id | company_name | country_id | city_id | main_category
     -------------------------------------------------------
     1 | ABC          |   1        |  2      |  12,3,6

查询我试过

$getResult = $companies->where([

            ["company_name", "LIKE", "%$keyword%"],
            ['main_category', "LIKE", "%$sector%"]

    ])->get();

1 个答案:

答案 0 :(得分:0)

如果要将查询从开头和结尾与逗号匹配,可以执行以下操作 -

$getResult = $compaies->where("company_name", "LIKE", "%$keyword%")->where('main_category', "LIKE", "$sector,%")->get();