假设我的数据库中有两个记录:
-- Name -- approved -- resolved
-- Record1 -- 1 -- 0
-- Record2 -- 1 -- 1
我在用where子句获取记录
$results = DB::table('mytable')->where('mytable.approved','=',1)->where('mytable.resolved','=',0);
奇怪的行为是它拒绝获取
Record1
行如果resolved=0
,如果我将查询更改为
$results = DB::table('mytable')->where('mytable.approved','=',1)->where('mytable.resolved','>',0);
它确实可以获取
Record2
。有人知道怎么了吗?
我尝试使用字段类型,并将其设为布尔值和空值,但没有帮助。
最佳答案
嘿使用下面的代码
$results=db::table('mytable')->whereraw(“mytable.approved=1和mytable.resolved=0”);
试试这个
它解决了你的问题。
关于php - 尝试在where子句中将字段与0进行比较时出现奇怪的行为,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27545351/