2

この MYSQL クエリがあり、Laravel4 で Eloquent を使用してこれを定式化する必要があります。

SELECT DISTINCT Employee.Name, Employee.Id FROM Employee
LEFT JOIN Team ON Employee.Id = Team.EmployeeId AND Team.TeamId = 1;
  1. Laravel でAND句を追加するにはどうすればよいですか。JOIN
  2. Laravel 4のSELECTにDISTINCTを追加するにはどうすればよいですか
4

1 に答える 1

8

$table規則または適切な接続を使用して Employee モデルを作成し、次のようにします。

Employee::select(array(DB::raw('DISTINCT `Employee`.`Name`'), 'Employee.Id'))
    ->leftJoin('Team', function($join)
            {
                $join->on('Employee.id', '=', 'Team.EmployeeId')
                     ->on('Team.id', '=', DB::raw(1));
            })
    ->get();

Query Builder(Fluent)だけを使用する場合は、 に置き換えEmployee::ますDB::table('Employee')->

:

  • DB::raw()バックティックを配置しないように Laravel に指示します。
  • クロージャーをjoinメソッドに渡すことで、さらに結合条件を追加し、条件on()を追加し、条件を追加できます。ANDorOn()OR
于 2013-05-12T14:48:42.047 に答える