问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

php、mysql高手来帮忙,如何计算下面某个节点是否在某节点下面?

发布网友 发布时间:2024-10-19 23:04

我来回答

3个回答

热心网友 时间:2024-11-25 20:57

数据表设计不合理.
建议的表设计:
编号, 上级编号 , 金额 , 路径

路径 就是该条用户记录的整个关系描述
内容可以为 #1#2#3#4#

表示该用户的顶层所属是 ID 1的用户. 上层是ID4的用户

如果表这样的设计的话. 要判断以某用户是否存在某用户下. 就可以直接用字符串比对得出了.

例如: 查询 当前用户是否 是ID 1用户的下属. , 先查出该用户的路径.

假设该用户记录为 编号5 , 上级ID4 , 金额 100 , 路径 #1#2#3#4#

然后用 strpos() , 判断 #1# 是否 存在 当前用户的路径(#1#2#3#)中即可,

例如: 获取ID1的用户所有下属会员 , 用 select * from 会员表 where instr(路径, '#1#') 即可实现

这样设计的好处就是可以快速高效的查询,获取所属关系的用户.

缺点就是维护稍微麻烦点. 在做更新, 删除操作的时候, 需要把所有相关用户的路径都更新一遍.

但整体里说, 比从数据库里拿出数据,. 挨个比较 要划算多了.追问你这个想法是好,但不实际,如果深度达到1000层,一万层,那你这个路径得有多长?

只是想在现在的数据库基础上,能够判断出即可。

追答1w层, 路径信息会记录 1w*2 + 1 个字符串 . 我认为在2w零1个字符里找一个ID .
比在 查询出1w条记录里对比上级ID 要划算的的哦 .

php+mysql 应用 很多时候, 性能瓶颈都是在mysql .
你目前的表设计. 只能循环遍历去比对 .
随着记录条数的增加. 资源的开销远比 一个 大字符串来的多

热心网友 时间:2024-11-25 20:58

function show($a,$b){
 $res = mysql_query(select sh1 from member where id=$a);
 $row = mysql_fetch_row($res);
 if($row[0] == $b)
  return '在';
 elseif($row[0] == '')
  return '不在';
 else
  function show($row[0],$b);
}

热心网友 时间:2024-11-25 20:58

搜索“二叉树查找”追问不会呀,能帮忙写出代码吗?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
为什么来大姨妈胸会胀 少儿学什么舞蹈 青年学什么舞蹈好 成年人学什么舞蹈 福州企业最低工资标准 2013年厦门的底薪是多少 生产要素的需求有哪些性质 生产要素的需求有何特点? 什么是生产要素需求 微观经济学要素需求什么是条件要素需求?它和要素需求有什么不同?_百度... 一米七等于多少米 170厘米等于几米几分米 抖音你好像我奶奶所说的仙女bgm是什么歌 《落霜》完整版歌词在线... 大连湾街道社会事业 大连湾街道基本概况 如何在电脑上弄蓝牙 学scratch有用吗 乾隆皇帝算是一代明君吗? 乾隆作为一代明君,为何会允许和珅这个奸臣总是跟在身边? 为什么微信上看不到对方的朋友圈呢? 手机号码的数字代表什么手机号码选择禁忌 为什么这台电脑玩qq空间或看视频之类的都会自动关机,而玩qq游戏一个下 ... 电脑一上qq空间不到二十分钟就自动关机,是怎么回事... 我的电脑玩QQ空间才开了十几分钟电脑就黑屏自动关机了,看视频看到一定... 为什么我的笔记本在打开烦琐网站的时候例如QQ空间,就会突然断电关机... 我家电脑不知怎么了,玩什么都不行,总自动关机 磕到底盘保险拒赔诉讼费怎么算 发生盗抢后保险公司拒赔诉讼费怎么算 手机号能量从哪位数开始看手机号码运势分析 人体适合的气压是多少? 我想问一下百家姓是指哪些姓?"竺"这个姓在不在里面? 怎么打开mysql可视化界面 再看MySQL8中大小些敏感、MySQL server through socket等问题 19岁可以办理什么货款 19岁可以办理什么贷款 什么贷款19岁可以办 想买一台可以直播玩游戏不卡的手机,什么才算是好手机 本地myeclipse如何调试服务器上的代码,服务器上的tomcat已经修改为dt... 电磁吸盘的介绍 怎么举报黑票点!电话或者网站什么的,隔壁不是正规票点,买票的太吵了... 老子的“合木诞生于毫末”理念如何体现事物发展规律? 玖富闪银是什么 解决MySQL数据不在同一区间问题的方法mysql不在一个区间 火烧圆明园影评 探究MySQL下载速度了解需花多少时间mysql下载需要多久 找到安装文件mysql下载后没有 ...学院和北京国际经贸研修学院民航管理学院之间如何选择??!!!_百度... 沈丘县到太和县李兴镇坐哪路车?有多远距离? 安徽省太和县至山西省运城市高速怎么走 北京能推荐工作专科大学哪家好?