$sql = "select id from table where PARENT_ID='{$pid}'"; $query = mysql_query($sql); $out = array(); while($row = mysql_fetch_assoc($query)){ $out[] = $row['id']; } $outstr = implode(',',$out);
$sql = "select id,PARENT_ID,iid from (select CONCAT(id,',') as iid from talbe group by PARENT_ID ) "; $query = mysql_query($sql); while($row = mysql_fetch_assoc($query)){ echo $row['PARENT_ID'].':'.$row['iid']; }
life169 你这个iid from (是什么意思啊。程序都报错。
如果目录层次很多,一个sql语句全找出来应该挺麻烦的。 建议用递归遍历。
$sql = "select id,PARENT_ID,iid from id,(select CONCAT(id,',') as iid,PARENT_ID from talbe group by PARENT_ID ) as p ";
$sql = "select id from table where PARENT_ID='{$pid}'";
$query = mysql_query($sql);
$out = array();
while($row = mysql_fetch_assoc($query)){
$out[] = $row['id'];
}
$outstr = implode(',',$out);
$query = mysql_query($sql);
while($row = mysql_fetch_assoc($query)){
echo $row['PARENT_ID'].':'.$row['iid'];
}
建议用递归遍历。
有了lft,rgt ,像你这种根据当前节点找所有层级子节点或或所有父节点,一条语句就搞定了。