0
我有一個mysql查詢獲取所有的父ID到子地圖到一個數組,然後我有一個函數打印出所有的ID爲父ID的子ID。在樹結構中的遞歸php mysql巨大的查詢
我現在想要完成的是使用此函數獲取每個回顯的子id的用戶名。 並在可能的情況下對每個頁面上的結果進行分頁。
MySQL查詢+函數來獲取ID,以孩子的映射到數組:
$res = $db->query('SELECT p.id AS parent, GROUP_CONCAT(c.id) AS children
FROM rev_r_clients AS p
JOIN rev_r_clients AS c ON c.parent_client_id = p.id
GROUP BY p.id');
$parents = Array();
while($row = $res->fetch_assoc()) {
$parents[$row['parent']] = explode(',',$row['children']);
}
現在,打印出來的孩子一個特定的父ID的功能:
function subtree($id, $parents) {
echo $id;
echo ' <br> ';
if (isset($parents[$id]))
foreach ($parents[$id] as $child)
{
subtree($child, $parents);
}
現在,任何想法如何從另一個MYSQL表(rev_users) 獲取用戶名,並在可能的情況下對每個頁面上的結果進行分頁?
無法爲每一行進行查詢,因爲結果是巨大的,每個父ID的數千個子ID。
我有成千上萬的大多數父母id的孩子ID,查詢每一行會讓事情變得瘋狂:D – user3117183
是的,這是我的觀點。所以,創建JOIN只有1個查詢需要渲染所需的所有字段。 – sdespont
那是怎麼回事?你能寫出例子嗎?我需要rev_users表中的用戶名字段,然後使用回顯的子ID進行打印 – user3117183