假设我的数据库中有两个表:sites
和sitetype1
sites
包含以下列:
Slug
Name
Url
slug1
Site1
site1.com
slug2
Site2
site2.com
sitetype1
包含以下列:
Slug
Description
slug1
Description for site1
slug2
Description for site2
在codeigniter中,理想情况下我需要获取这些值,以便它们位于name
=> slug
对{/ p>
所以我试图得到一个类似于:
的数组['Site1' => 'slug1', 'Site2' => 'slug2']
以前,我是通过一种非常低效的方法从sitetype1
表中获取slug然后循环遍历这些并从name
数组中获取相应的sites
值来完成的。这似乎是一种过于复杂的方式。我正在寻找加入来完成任务,但我对MySQL非常糟糕,需要一些帮助。
我试过这个:
$this->db->select('name','slug');
$this->db->from('sites');
$this->db->join('sitetype1', 'sitetype1.slug = sites.slug','inner');
但是它只返回相应的name
值。任何人都可以从这里帮助我吗?
这是它返回的一个例子:
array(2) {
[0]=>
object(stdClass)#22 (1) {
["name"]=>
string(5) "Site1"
}
[1]=>
object(stdClass)#23 (1) {
["name"]=>
string(5) "Site2"
}
}
答案 0 :(得分:0)
你应该使用like;)
$this->db->select('sites.name, sitetype1.slug');
错误: 'name','slug'
右: 'name, slug'