在MySQL中,要查詢所有子節(jié)點(diǎn)可以使用遞歸查詢或者使用臨時(shí)表進(jìn)行操作。以下是兩種方法:
category
的表,表結(jié)構(gòu)如下:id | parent_id | name
可以通過以下遞歸查詢來查詢所有子節(jié)點(diǎn):
WITH RECURSIVE cte AS (
SELECT id, parent_id, name
FROM category
WHERE id = <parent_id> -- 指定要查詢的父節(jié)點(diǎn)ID
UNION ALL
SELECT c.id, c.parent_id, c.name
FROM category c
JOIN cte ON c.parent_id = cte.id
)
SELECT * FROM cte;
CREATE TEMPORARY TABLE temp_category AS
SELECT id, parent_id, name
FROM category
WHERE id = <parent_id>; -- 指定要查詢的父節(jié)點(diǎn)ID
INSERT INTO temp_category
SELECT c.id, c.parent_id, c.name
FROM category c
JOIN temp_category t ON c.parent_id = t.id;
SELECT * FROM temp_category;
以上是兩種在MySQL中查詢所有子節(jié)點(diǎn)的方法,可以根據(jù)具體情況選擇適合的方法進(jìn)行操作。