>我正在尝试进行递归sql查询,搜索父亲的所有孩子和该孩子的孩子,等等。下面代码的问题在于它只检索第一个子树。
-
我需要将整个树的所有电子邮件保存在一个数组中
$hermanos = array(); function obtener($id){ $res = mysql_query("SELECT email,id FROM usuarios WHERE padre = '$id'", Conectar::con()); while($row = mysql_fetch_assoc($res)){ if ($row['email'] != 'waiting') { $hermanos[] = $row['email']; obtener($row['id']); } } return $hermanos; } $a = obtener($invitado); print_r($a);
从模糊的描述中,我认为您想要另一种解决方案。根据数据库语言,这称为分层数据退休。我认为这些递归查询应该在数据库端使用过程/视图完成您可以查看这些链接以获取继承数据
-
带 sql 视图的 Sol1
-
有关分层数据的文章MySQL
-
另一个有风景的索恩