PHP一个查询父目录的问题 id pid treename type1 0 a 12 1 a1 03 2 a2 04 2 a3 0我要找出id=4的父目录,并且type是1记录,上下级别数不固定的,怎么写啊? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 上下级别数不固定的这个不知是什么。//忽略上面的那个条件SELECT b.* FROM `table` AS a LEFT JOIN `table` AS b ON (a.id = b.pid)WHERE a.id = 4 AND b.type = 1 现在弄树结构数据,我一般都引入lft,rgt,即所谓的左右值树结构.保证一个节点的所有的子孙节点的lft > 当前节点的lft, rgt < 当前节点的rgt.保证一个节点的所有的父节点的lft在当前节点的lft和rgt之间。所以找什么子孙节点或者父祖节点就可以一句sql搞定,如果按原始的id,pid来设计,要不是搞个存储过程,要么一层层sql找,或者全部取出来php去弄。lft,rgt在操作方面就麻烦一点,节点数据增删改都要多出一两条语句进行更新,这个可以google. PHP如何调出“打开”或“另存为”窗口 不用表单怎样取得<input name="textfield" type="text" value="123456789">的value字符串 将php升级到5.3.3,结果不到半个小时网站就不能连接mysql 安装wampserver时,找不到wampmanager.exe的错误 php的垃圾收集机制是怎样的? 求一个图片地址表示的正则表达式的写法! 超全局变量和全局变量的区别? 按照比例随机出现. textarea中数据显示问题,在线wait 怎么知道自己适不适合学PHP 当系统长时间不登陆,再次输入密码的时候,就会出现错误 php 已读回执邮件
这个不知是什么。
//忽略上面的那个条件
SELECT b.* FROM `table` AS a
LEFT JOIN `table` AS b ON (a.id = b.pid)
WHERE a.id = 4 AND b.type = 1
保证一个节点的所有的父节点的lft在当前节点的lft和rgt之间。所以找什么子孙节点或者父祖节点就可以一句sql搞定,如果按原始的id,pid来设计,要不是搞个存储过程,要么一层层sql找,或者全部取出来php去弄。lft,rgt在操作方面就麻烦一点,节点数据增删改都要多出一两条语句进行更新,这个可以google.