sql >> Databasteknik >  >> RDS >> Mysql

mysql gå med ON och AND för att laravel vältalig

Så som referens löste jag det så här:

$query = Person::leftJoin('actions', function($q) use ($user)
        {
            $q->on('actions.person_id', '=', 'persons.id')
                ->where('actions.user_id', '=', "$user");
        })
        ->groupBy('persons.id')
        ->where('type', 'foo')
        ->get(['persons.id', 'full_name', DB::raw('count(actions.id) as total')]);

->where() klausul inom leftJoin , konstigt nog, behöver talmärkena för att variabeln ska skickas igenom SQL-frågan korrekt (likaså verkar '2' inte fungera medan "2" gör det).



  1. Får endast månad och år från SQL DATE

  2. Att göra en plan för mitt första MySQL-projekt

  3. GPL och libmysqlclient

  4. SQL Server Internals:Plan Caching Pt. I – Återanvändning av planer