$count = DB::table( DB::raw("({$SubQuery->toSql()}) as sub") )
// ->where(..) 這裡會出錯
->mergeBindings($SubQuery->getQuery())
// ->where(..) 正確
->count();
Laravel v5.6.12 (2018-03-14) 之後,加入了 fromSub()
及 fromRaw()
的方法可以直接產生子查詢語法
DB::query()->fromSub(function ($query) {
$query->from('posts')
->where('status', 1)
->groupBy('user_id');
}, 'sub')->count();
// select count(*) as aggregate from (select * from `abc` group by `col1`) as `a`
sql - How to select from subquery using Laravel Query Builder? - Stack Overflow
Laravel 是 PHP 的框架(Framework),提供了很多開發網站或 API 所需的工具及環境,經過簡單的設定就可以完成資料的處理及顯示,使開發者可以很優雅且快速的開發出各個不同的產品。本書適合有
PHP 基礎的人,但不知道要怎麼選擇框架,或者不用框架的人也能夠明白它的好處。
雖然 WordPress 也能夠架站,但如果有客製化需求,要開發各式各樣的網站,或提供 App 使用的 API,如此一來你只能選擇用框架,而 Laravel 是目前最受歡迎的。
本書將解說為什麼要使用框架,以及理解框架的優缺點後,要怎麼選擇框架,並用框架快速建構一個網站。除非必要,否則書中會避免專業技術用語,盡量使用最生活化易懂的例子及語氣,讓大家更容易進入 Laravel 的世界。