0
我想排除查詢。向查詢添加排除。 Laravel 4
有4個表:
- Published_books
- Parameters_values
- 出貨量
- 訂單
眼下在第一個查詢我問用柱出版物(plaza_type)參數值爲「最佳」
但是,我也想從第一個查詢中排除:購買的出版物(第二個查詢)。但是,購買的出版物是當貨物(表格)被創建並且訂單(表格)也被創建並且具有「有效」,「部分」,「發送」,「接收」狀態。
我有兩個數組:
$eliteBooks = BookPublication::join('parameter_values', 'published_books.plaza_type', '=', 'parameter_values.id')
->select('published_books.*')
->where(function($query) use($then, $now)
{
$query->whereBetween('published_books.created_at', [$then, $now])
->where('parameter_values.pvalue', '=', 'best');
})
->orderBy('published_books.created_at', 'desc')->take(12)
->get()->chunk(6)->map(function($value)
{
return $value->chunk(3);
});
,第二個
$recentBoughtExchanged = BookPublication::join('shipments', 'published_books.id', '=', 'shipments.published_book_id')
->join('orders', 'shipments.order_id', '=', 'orders.id')
->join('parameter_values', 'orders.order_status', '=', 'parameter_values.id')
->select('published_books.*')
->where(function($query) use($then, $now)
{
$query->whereBetween('orders.created_at', [$then, $now])
->where('parameter_values.pvalue', '=', 'valid')
->orWhere('parameter_values.pvalue', '=', 'partial')
->orWhere('parameter_values.pvalue', '=', 'sent')
->orWhere('parameter_values.pvalue', '=', 'received');
})
->groupBy('published_books.id')
->orderBy('orders.created_at', 'desc')
->get()->chunk(6)->map(function($value)
{
return $value->chunk(3);
});
任何幫助嗎?我想排除第一個結果,以便只顯示可以購買的出版物。