【发布时间】:2013-06-25 16:05:22
【问题描述】:
我有一个用 codeigniter 开发的网站,我想在其中检索特定 tee 的评论。 我有一个这样的 T 恤:
- id
- user_id
- name
- created
- modified
还有像这样的 tee_cmets 表:
- id
- user_id
- tee_id
- created
- modified
我已经完成了这个查询:
$this->db->select('*,tee.id as id,tee.created as created, tee_comments.id as tee_comments_id, tee_comments.created as tee_comments_created, tee_comments.modified as tee_comments_modified');
$this->db->from('tee');
$this->db->join('tee_comments', 'tee_comments.tee_id = tee.id','left outer');
$this->db->order_by("tee.created", "desc");
$query = $this->db->get();
通过此查询,我检索了两行 tee,因为该 tee 中有两个 cmets。
我的目标是只检索一行,其中有一组评论,例如:
tee{
id,
name,
created,
modified
comment{
[0]
id,
tee_id,
comment,
created,
modified
[1]
id,
tee_id,
comment,
created,
modified
}
}
我已尝试加入: - 剩下 - 对 - 左外 - 右外
但不能解决问题,有没有办法做到这一点? 谢谢
【问题讨论】:
-
数据库查询从表(组合)中检索行。如果你想要一个嵌套结构,你必须自己在 php 中生成它。
-
您必须手动将评论数据与相应的 tee 记录汇总
-
您的问题表明您只想要 1 行评论,但您想要实现的目标包括多个 cmets?
-
@jeroen 他正在使用 CI,它返回一个“嵌套结构”
-
@SpYk3HH 我们可能使用了不同的
nested structures定义;它返回包含信息的行,但这些行不包含 OP 需要的信息子行(cmets ...)。
标签: php sql codeigniter