SELECT accounts.NameSurname, Projects.Name, personnels.NameSurname
FROM accounts
JOIN projects ON (accounts.Id = projects.AccountId)
JOIN projectpersonnels ON (projects.Id = projectpersonnels.ProjectId)
JOIN accounts AS personnels ON (projectpersonnels.AccountId = personnels.Id)
結果NameSurname名稱NameSurname colums爲什麼CodeIgniter Active Record和phpMyAdmin會給出不同的結果?
爲什麼會上方和下方產生不同的「列」的標題和列數的查詢? 我在phpmyadmin中運行上面的查詢。 使用mysql和笨1.7.3
$this->db->select('accounts.NameSurname,projects.Name,personnels.NameSurname');
$this->db->from('accounts');
$this->db->join('projects','accounts.Id = projects.AccountId');
$this->db->join('projectpersonnels','projects.Id = projectpersonnels.ProjectId');
$this->db->join('accounts as personnels','projectpersonnels.AccountId = personnels.Id');
$q=$this->db->get();
結果:NameSurname(這是人員)姓名(即項目)
謝謝您的閱讀和回覆。
cwalllenpolle感謝您的回答, $ this-> db-> join('accounts','projectpersonnels.AccountId = personnels.Id','AS personnels'); – anybudy 2011-01-07 08:47:28
謝謝,但他們是同一列,我希望人員成爲賬戶的別名。使用'AS'來指定別名,如下所示: $ this-> db-> join('accounts as personnels','projectpersonnels.AccountId = personnels.Id'); 我看到'LEFT'被提供給activerecord連接函數,嘗試代碼如下: $ this-> db-> join('accounts','projectpersonnels.AccountId = personnels.Id','AS personnels');還沒有工作,它與activerecord別名定義有關嗎?我們如何在activerecord中定義別名,當我使用sql語法(db-> query($ sql))查詢我定義的別名時,它也不工作 – anybudy 2011-01-07 09:10:56