【发布时间】:2017-03-10 07:04:39
【问题描述】:
我有这样的面积表:
-----------------------------
id | name | level
-----------------------------
1 | India | country
2 | Some?thing | country
在此表中,我添加了带有 问号 的行,我想按如下方式选择该行 用雄辩的方式查询:
Area::select(*)->where("name","LIKE", "%Some?thing%")
->where("level","=","country")->get();
但这并没有给出结果,因为字符串中的问号在 where 条件被绑定替换
生成的原始 sql 是:
select * from area where name like %Somecountrything% AND level = ?
但我想要它喜欢
select * from area where name like %Some?thing% AND level = country
【问题讨论】:
-
试试这样的
whereRaw("name LIKE %Some?thing%") -
我试过了,但是没有用。
-
真的不知道能不能用,不过尽量用斜杠转义问号。 \?
-
@Arjun:在我的评论中检查我的答案我忘记给出单引号,并且我已经测试了我的答案它正在生成正确的输出。
标签: php laravel laravel-5 laravel-eloquent