sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur man använder inre kopplingar med delfrågor i Laravel Eloquent

det här fungerade (ignorera de dynamiska sakerna som detta->getClassName etc.) den grundläggande logiken fungerar bra

public function scopeAddTranslations($query)
{
    $t = new Translation();

    $subq = $t->select('item','text as ref_ar')
              ->where('locale','=','ar')
              ->where('item','like',$this->getClassName().'.ref%');

    $query->leftjoin(\DB::raw('('.$subq->toSql().') as t'), 
      function ($join) use ($subq) { 
          $join->on(\DB::raw('SUBSTRING('.$this->getTable().'.ref_translation 
                              FROM 14 FOR 26)'),
                                 '=',
                                 \DB::raw('t.item'))
                   ->addBinding($subq->getBindings());
            });
    return $query;
}



  1. Läs XML-dokument lagrat i SQL Server 2008 R2 med XML-datatyp

  2. När du försöker ladda en clob till ett Oracle-bord, laddar du för många poster

  3. Hur man subtraherar sekunder från postgres datetime

  4. Hur kan vi definiera utdataparameterstorlek i lagrad procedur?