将REGEXP与Laravel查询构建器一起使用

时间:2017-11-16 02:13:41

标签: sql laravel sqlite laravel-query-builder

我有以下查询:

$registros = Oportunidade::whereRaw("descricao REGEXP '[[:<:]]". $search ."[[:>:]]'")->get();   
  

SQLSTATE [HY000]:一般错误:1没有这样的函数:REGEXP(SQL:select * from“oportunidades”其中descricao REGEXP'[[:&lt;:]] java [[:&gt;:]]')< / p>

也尝试过:

$registros = Oportunidade::where("descricao", "REGEXP", "'[[:<:]]'" .$search . "'[[:>:]]'")->get();

但由于某种原因,我收到了这个:

  

SQLSTATE [HY000]:一般错误:1没有这样的函数:REGEXP(SQL:select * from“oportunidades”where“descricao”REGEXP'[[:&lt;:]]'java'[[:&gt;:] ]')

     

SQLSTATE [HY000]:一般错误:1没有这样的功能:REGEXP

为什么我收到此错误,我该如何解决?查询工作完美,没有laravel。

为什么这样做?

我正在使用like %value%

SELECT * FROM mytable where description like %STRING%

问题是:当我搜索JAVA时,它甚至会返回JAVAscript的记录。 但是,JAVA!= JavaScript,对吗?如何使用Laravel解决问题? 我发现使用纯Mysql的唯一方法是使用REGEXP

0 个答案:

没有答案