加入两个MySQL查询并基于第一个查询中的值检索
问题描述:
我想在CodeIgniter中一起加入两个查询,第二个查询将依赖来自第一个查询的值。我希望得到的数组包含公告表中的所有数据,PLUS根据第一个查询中的poster_id
从用户表中检索到的第一个和最后一个名称。加入两个MySQL查询并基于第一个查询中的值检索
例如,在伪代码:
SEECT * FROM announcements JOIN SELECT first, last FROM users WHERE user_id = announcements.poster_id
这里是我的代码:
$this->db->order_by('time_posted', 'DESC');
$query = $this->db->get('announcements');
$results = $query->result();
这是可能的,我怎么会修改这包括上述连接查询?
答
你可以尝试,做一个适当的加入:
$this->db->select('a.*, u.first, u.last');
$this->db->from('announcements a');
$this->db->join('users u', 'u.user_id = a.poster_id');
$this->db->order_by('time_posted', 'DESC');
$query = $this->db->get();
答
你也可以试试这个。
$this->db->select('announcements.*, users.first, users.last');
$this->db->from('announcements');
$this->db->join('users', 'users.user_id = announcements.poster_id');
$this->db->order_by('time_posted', 'DESC');
$query = $this->db->get();
$results = $query->result();
来吧。从基础开始。我们都必须。 – Strawberry