2017-03-06 5 views
0

私は10個のテーブルを持っています。ここでは同じフィールドのテーブル名です。 laravelによって与えられた例ではLaravel 5 - クエリビルダーまたはEloquentで2つ以上のテーブル/クエリでunionを使用するにはどうすればよいですか?

sell_2007 
sell_2008 
sell_2009 
... 
sell_2015 
sell_2016 

2つのテーブルのみ(https://laravel.com/docs/5.3/queries#unions)、で組合を行う方法テーブルが二つ以上のテーブル/クエリの場合は?私の場合、10のテーブルがあります。どのようにクエリビルダやEloquentでそれを行うには?

ありがとうございました。

答えて

-1

このように複数の共用体を追加できます。

$first = DB::table('sell_2007'); 
$second = DB::table('sell_2008'); 

$users = DB::table('users') 
     ->union($first) 
     ->union($second) 
     ->get(); 

RAW SQLクエリを使用してテーブルを結合すると、パフォーマンスが向上することがあります。

+0

SQLSTATE [21000]:カーディナリティ違反:1222使用されたSELECTステートメントの列数が異なります。 – Fredy

+0

ユニオン内の各テーブルに同じ数の列を指定する必要があります – TedRed

関連する問題