国产成人a∨激情视频厨房,国产v亚洲v欧美v精品综合,heyzo高无码国产精品,国产av导航大全精品,成品人视频ww入口

php 對 mysql 數(shù)據(jù)庫遍歷的問題?

一個關(guān)于代理分銷系統(tǒng)的算法優(yōu)化問題

比如,代理級別分:金、銀、銅三級,我現(xiàn)在是金牌代理A,同時我發(fā)展了銀牌代理B、C、D,銀牌代理b發(fā)展了銅牌代理E、F,如圖:
A的下級代理列表
╦═══════

╠═ b
║ ╠══ e
║ ╠══ f
╠═ c
╠═ d
我現(xiàn)在用程序作出上面這樣一張例圖方法是:(PHP+MYSQL)
先搜索所有上級代理為A的代理,
例如找到了B代理,再搜索所有上級代<愛尬聊_百科>理為B的代理,本次搜索完畢。
再搜索C代理 …………
以此類推。

問題:

現(xiàn)在代理數(shù)據(jù)庫中有三十萬條記錄,每個代理都可以在代理分銷系統(tǒng)中查看自己的下級代理樹,按照以上方法:
每次搜索都要很久,如果某個代理的下級代理有1000個,那就根本顯示不出來。


我想到的解決辦法是用一個數(shù)組存儲所有用戶關(guān)系,然后將這個數(shù)組存儲為文件,對每次添加刪除用戶都對這個數(shù)組同時進(jìn)行更新操作,然后把想要的數(shù)據(jù)從數(shù)組遍歷出來,然后直接到數(shù)據(jù)庫中執(zhí)行一個select就可以了。。這種辦法可行么,還有什么其他解決方案么


遍歷

想從上層會員找其下的底層會員,會用到遍歷,目測是三叉樹的層次遍歷,這個算法,目測會對數(shù)據(jù)庫進(jìn)行好多好多次的查詢。。。太耗費資源了,有沒有什么替代方案?緩存?redis?


Almaktoum 8小時前

先檢查代理級別建索引了沒。


川下富江 8小時前

謝邀,說說我的幾個思路吧:


南樓清主 8小時前

多次加載,這個樓上也說了,先加載N級的,等點擊后,再ajax去請求N+1級的。


白天一_689 8小時前

整個樹顯示出來一個頁面也不合適吧,可以做成按需查詢。金牌代理打開頁面顯示下級的所有銀牌代理,點擊銀牌代理用戶再查看他下級的銅牌代理


筱果果背叛殘局18185350 7小時前

建議分級查詢,按需查詢數(shù)據(jù),一次性顯示一個關(guān)系樹查詢次數(shù)多,耗資源;這樣的實現(xiàn)可以看無限級分類,使用左右值原理,先序遍歷樹形結(jié)構(gòu),與商場的分類同原理


360U3208140907 7小時前

如果更新不是很頻繁的話,使用緩存(數(shù)據(jù)量30萬,估計只能緩存1~2級了),不用每次用SQL查詢。


編輯 舉報 2023-04-09 13:48

0個評論

暫無評論...
驗證碼 換一張
相關(guān)內(nèi)容