1
我有一個查詢:laravel查詢跳過/拿不出工作
$eventsList = DB::table('events')
->where('start', '>', Carbon::now())
->orWhere(function($query)
{
$query->where('start', '<', Carbon::now())
->where('end', '=', '0000-00-00 00:00:00');
})
->orderBy($order_by, $order)
->get();
這工作正常,返回大約50結果。但我想限制和頁面返回的條目,所以我添加了一個->skip()
和->take()
鏈:
$eventsList = DB::table('events')
->where('start', '>', Carbon::now())
->orWhere(function($query)
{
$query->where('start', '<', Carbon::now())
->where('end', '=', '0000-00-00 00:00:00');
})
->orderBy($order_by, $order)
->skip(0)->take(10)
->get();
但現在沒有返回。我在這裏做錯了什麼?
編輯:getQueryLog的相加後的結果():
array(1) {
[0]=>
array(3) {
["query"]=>
string(112) "select * from `events` where `start` > ? or (`start` < ? and `end` = ?) order by `start` asc limit 10 offset 0"
["bindings"]=>
array(3) {
[0]=>
object(Carbon\Carbon)#225 (3) {
["date"]=>
string(19) "2014-06-27 13:31:12"
["timezone_type"]=>
int(3)
["timezone"]=>
string(13) "Europe/London"
}
[1]=>
object(Carbon\Carbon)#228 (3) {
["date"]=>
string(19) "2014-06-27 13:31:12"
["timezone_type"]=>
int(3)
["timezone"]=>
string(13) "Europe/London"
}
[2]=>
string(19) "0000-00-00 00:00:00"
}
["time"]=>
float(0.76)
}
}
這看上去很好,檢查查詢與'DB :: getQueryLog()'例如。 –
謝謝你 - 我已經添加了getQueryLog的結果,但我不確定如何解釋它。 – babbaggeii
這意味着查詢被執行,因爲它應該和其他地方的問題。你得到了什麼結果?它應該是stdObjects數組或空數組。 –