【发布时间】:2013-08-06 17:15:56
【问题描述】:
我有一个问题要问。首先,我有一个表,其中父母有parent_id 是0 和孩子有parent_id 相等的父母ID。 parent_id 的所有子记录存储为 json 编码数组(一个子记录可以有多个父记录)。
那么,当我传递一个父 id 时,如何获取父的所有孩子。我试过了,但它不起作用,我不知道。
代码如下:
function get_child_product($parent_id, $limit, $start) {
$this -> db -> from('product');
$this -> db -> where(json_decode('parent_id'), $parent_id);
$this -> db -> limit($limit, $start);
$this -> db -> order_by('order', 'asc');
$this -> db -> order_by('id', 'desc');
$query = $this -> db -> get();
return $query -> result();
}
问题解决了:
function get_child_product($parent_id, $limit, $start) {
$this -> db -> from('product');
$this -> db -> like('parent_id', '"' . $parent_id . '"');
$this -> db -> limit($limit, $start);
$this -> db -> order_by('order', 'asc');
$this -> db -> order_by('id', 'desc');
$query = $this -> db -> get();
return $query -> result();
}
【问题讨论】:
-
你能再清楚一点吗?数据库中的 JSON 是什么?或者您是否正在向您的函数发送一组 id 以获取这些父母的所有孩子?
-
是的,我将 parent_id 数组作为 JSON 存储在数据库中。
标签: mysql codeigniter