簡體   English   中英

Codeigniter和學說連接三個表

[英]Codeigniter and doctrine join three tables

您好,我正在嘗試在規范codeigniter中加入3個表,我已經成功地加入了兩個表,但是在加入第三個表時遇到了問題。

這是我的codeigniter活動記錄查詢。 我想在學說中處理此查詢

$query =  $this->db->select('table1.name, table3.date')
        ->from('table1')
        ->join('table2', 'table2.id = table1.Uid')
        ->join('table3', 'table3.id = table1.Rid')
        ->where('table1.Uid', $Uid)
        ->get();
    return $query->result();

這是我的主義查詢生成器查詢,在其中我成功地連接了兩個表。

$qb = $this->em->createQueryBuilder();
    $query = $qb->select('t1, t2')
        ->from('table1', 't1')
        ->join('table2', 't2')
        //   ->join('table3', 't3')
        ->where('t1.Uid = :Uid')
        ->andwhere('t2.Yid = :Yid')
        ->setParameters(array('Uid'=> $Uid, 'Yid' => $user_id))
        ->getQuery()
        ->getResult();

嘗試使用以下代碼,看來您的語法不正確。

$qb = $this->em->createQueryBuilder();
$query = $qb->select('t1.name', 't2.name')
->from('table1', 't1')
->leftJoin('t1', 'table2', 't2', 't2.id = t1.Uid')
->leftJoin('t1', 'table3', 't3', 't3.id = t1.Rid')
->where('t1.Uid = :Uid')
->andwhere('t2.Yid = :Yid')
->setParameters(array('Uid'=> $Uid, 'Yid' => $user_id))
->getQuery()
->getResult()

有關構造新的QueryBuilder對象的更多信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM