聯合查詢用於將兩個或更多查詢的結果集組合為單個結果集,該結果集包含聯合查詢中所有查詢的全部行。UNION的結果集列名與UNION運算符中第一個Select語句的結果集的列名相同,另一個Select語句的結果集列名將被忽略,且其他查詢字段數必須和第一個相同。
今天博客園分享一下聯合查詢並且分頁代碼
- $xk = DB::table('xiaokes')->select(['id','xk_name as name','xk_teacher_id as tid','ke_type','created_at'])
- ->where('xk_teacher_id',$id);
- $query = DB::table('zhuanlans')->select(['id','zl_name as name','zl_teacher_id as tid','ke_type','created_at'])
- ->where('zl_teacher_id',$id)->union($xk);
- $result = DB::table(DB::raw("({$query->toSql()}) as a"))->mergeBindings($query->getQuery())
- ->orderBy('created_at','desc')->paginate(20);