PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak używać sprzężeń wewnętrznych z podzapytaniami w Laravel Eloquent

to zadziałało (zignoruj ​​dynamiczne rzeczy, takie jak to->getClassName itp.). Podstawowa logika działa dobrze

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Na czym polega problem z usunięciem wiersza z bazy danych?

  2. Pobieram COUNT z sqlalchemy

  3. JPA Criteria API:jak pobrać datę w formacie mm/dd/rrrr

  4. Jak mogę przejrzeć wszystkie dotacje do bazy danych i obiektów dla roli?

  5. szyny 3.2.2 (lub 3.2.1) + Postgresql 9.1.3 + Ubuntu 11.10 Błąd połączenia