2017-05-26 8 views
0

report_detailsnameの2つのテーブルがあります。 report_detailsテーブルには、テーブルnameに関連するIDがあるからです。 nameテーブルの列と列の両方を取得するためのYii2の正しい構文は何ですか?これはYii2クエリービルダーでの左結合

$query = new yii\db\Query; 
       $query->select('report_details.reference_no, report_details.subject, report_details.doc_for, report_details.doc_from, report_details.doc_date, report_details.doc_name, report_details.drawer_id, report_details.user_id, name.name_id, name.position, name.fname, name.mname, name.lname') 
        ->from('report_details') 
        ->join('LEFT JOIN', 'name', 'report_details.doc_for = name.name_id') 
        ->where(['report_details.reference_no' => $model->reference_no]); 
       $results = $query->all(); 
+0

を使用することができます...これまでのところ、私のクエリですか? – lalithkumar

答えて

0

あなたはすべてのエラーを取得している->leftJoin( )

$query = new yii\db\Query; 
      $query->select('report_details.reference_no, report_details.subject, 
          report_details.doc_for, report_details.doc_from, 
          report_details.doc_date, report_details.doc_name, 
          report_details.drawer_id, report_details.user_id, 
          name.name_id, name.position, name.fname, name.mname, name.lname') 
       ->from('report_details') 
       ->leftJoin('name', 'report_details.doc_for = name.name_id') 
       ->where(['report_details.reference_no' => $model->reference_no]); 
    $results = $query->all();