MySQL 웹 사이트에는 데이터베이스에 계층 적 데이터를 저장하는 경우 excellent tutorial이 있습니다. 노드의 직접적인 자식을 반환하는 쿼리를 작성하려고합니다. 필자는 MySQL의 웹 사이트에서 쿼리를 복사/붙여 넣기하고 싶지 않습니다. 왜냐하면 저는 데이터베이스에 독립적 인 방식으로이 작업을 수행하려고하기 때문입니다. 부모 쿼리 및 하위 쿼리 - 어떻게 복잡한 SQL 쿼리를 Zend_Db_Select 문으로 변환합니까?
이
은SELECT node.name, (COUNT(parent.name) - (sub_tree.depth + 1)) AS depth
FROM nested_category AS node,
nested_category AS parent,
nested_category AS sub_parent,
(
SELECT node.name, (COUNT(parent.name) - 1) AS depth
FROM nested_category AS node,
nested_category AS parent
WHERE node.lft BETWEEN parent.lft AND parent.rgt
AND node.name = 'PORTABLE ELECTRONICS'
GROUP BY node.name
ORDER BY node.lft
)AS sub_tree
WHERE node.lft BETWEEN parent.lft AND parent.rgt
AND node.lft BETWEEN sub_parent.lft AND sub_parent.rgt
AND sub_parent.name = sub_tree.name
GROUP BY node.name
ORDER BY node.lft;
+1 튜토리얼에 대한 링크입니다. – Marcin