Codeigniter外键数据检索

时间:2015-09-10 02:59:25

标签: php mysql codeigniter foreign-keys

我使用的是codeigniter 3.0及其新功能。这是我的数据库结构。如何通过单个命令访问人名。

这是我的表1:

CREATE TABLE IF NOT EXISTS `person` (`id` int(11) NOT NULL AUTO_INCREMENT,`name` varchar(45) NOT NULL,PRIMARY KEY (`id`));

这是表2:

CREATE TABLE IF NOT EXISTS `work` (`ID` int(11) NOT NULL AUTO_INCREMENT,  `personname` int(11) NOT NULL,  `date` varchar(220) NOT NULL,  PRIMARY KEY (`ID`),  FOREIGN KEY (`personname`) REFERENCES person(id))

以下是获取数据的模型:

$query = $this->db->get('work');
    return $query;

它只返回人员ID。但我需要这个人的名字。

1 个答案:

答案 0 :(得分:2)

尝试:

$query = $this->db->select('*')
                  ->from('work')
                  ->join('person', 'person.id = work.personname')
                  ->get();

return $query;

像这样使用:

foreach ($query->result() as $row)
{
        echo $row->name;
}

您可以在此处阅读有关如何使用查询构建器的文档:

http://www.codeigniter.com/user_guide/database/query_builder.html