特定条件,SQL语句可以查到数据,但是Think返回不了

浏览:524 发布日期:2017/10/25
5.0.0 - 严重 - 已关闭
ThinkPHP 5.1版本

以下代码存在诡异问题:$orderlist = Orderhistory::where('uid|instead_uid',$uid)->where('realprice',($realprice*100))->where('istype',$istype)->where('isstatus',0)->where('create_time','>',(time()-600))->select();
                        echo Orderhistory::getLastSql();
                        var_dump($orderlist);
输出:SELECT * FROM `pa_orderhistory` WHERE  ( `uid` = '256077ef6e06e72024daed57' OR `instead_uid` = '256077ef6e06e72024daed57' )  AND `realprice` = 56  AND `istype` = 1  AND `isstatus` = 0  AND `create_time` > 1508896254
array(0) {
}
用这个SQL语句,通过MYSQL-Front 在数据库里能查到数据fb623230f608ccf3b9773255    256077ef6e06e72024daed57    1508896838    1508896838    57    56    1    http://test.xxxx.com/?orderid=0de216d42bb80f559adfa42e    http://test.xxxx.com/paynotify    0de216d42bb80f559adfa42e    64745d4a2512c41d30b9b65d    127.0.0.1    1508897198        0    77fe48d35ec1a5f75faeede4    0    自动匹配价格的商品

诡异的地方是:
如果把realprice 条件换成 0.27,0.12,或者0.88等,都可以返回正确数据,唯独:0.57,0.56 这几个数值,SQL可以查到数据,但是Model::where()这样的返回对象,返回的是array(0){}



评论()
后面还有条评论,点击查看>>