나는 foo라는 db 테이블을 가지고있다. 그것은 다음 필드가 있습니다중첩 된/재귀적인 MySQL 쿼리
- ID를
- 이름
- parentId
그것은 다음과 같이 아래로 3 단계 깊이 갈 수
- 푸 1 (parentId : 0)
- Foo 2 (부모 아이 1) (foo의 자녀 1),210
- 푸 3 (parentId는 : 2) (모두 foo1은과에서는 foo2의 자식)
- Foo 2 (부모 아이 1) (foo의 자녀 1),210
지금 문제가 내 사용자 테이블에서 필드있다되고 fooId
을했다. 최상위 foo에 속한 모든 사용자를 얻고 싶습니다.
예를 들어, 사용자의 fooId가 3이고 위의 예에서 fooId1과 관련된 모든 사용자를 얻으려면 해당 사용자가 결과에 포함되어야합니다.
그냥 두 가지 수준의 깊은 있었다면, 나는 이런 식으로 뭔가를 할 수 :
`SELECT stuff FROM users, foo WHERE foo.parentId = '1' AND user.fooId = foo.id
하지만 그것은 현재의 상황에서 어떻게 할 수 있습니까?
다음은 도움이 될 수 http://stackoverflow.com/questions/5291054/hierarchical-sql-problem/5291159#5291 159 –