【问题标题】:Codeigniter Foreign Key data retrieveCodeigniter 外键数据检索
【发布时间】:2015-09-10 02:59:24
【问题描述】:

我正在使用 codeigniter 3.0 并且是新手。这是我的数据库结构。如何通过单个命令访问人名。

这是我的第一张桌子:

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。但我需要此人的姓名。

【问题讨论】:

    标签: php mysql codeigniter foreign-keys


    【解决方案1】:

    试试:

    $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

    【讨论】:

    • 如果两个表具有相同的 name 属性怎么办?
    • @snAtchnAren 它就像一个普通的 SQL 查询一样工作。你可以做->select('person.name')
    猜你喜欢
    • 2016-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多