나는이 테이블을 가지고있다.mysql, 테이블에서 모두 선택
나는 cat id = 4와 그 고양이 부모 id가 같은 다른 모든 행을 선택하고 싶다. 예 : 나는 고양이 아이디 넷에서 모든 범주를 원하는 경우, 그것은 고양이 IDS 4 (자체), 2에 결과를해야하며, 1
+-------------------------------+
| id | catname | catparentid |
+-------------------------------+
|1 | home | 0 |
|2 | products | 1 |
|3 | men | 2 |
|4 | women | 2 |
|5 | shirts | 3 |
|6 | outdoor | 0 |
+-------------------------------+
내가 시도 :
SELECT * FROM categories c
where c.id = 4
c.catparentid IN (SELECT id FROM categories)
을하지만 모든납니다. 노조를해야합니까?
원하는 깊이는 무엇입니까? 재귀 적으로 일치하는 것을 찾거나 2-3 레벨 아래로 찾아야합니다 ... –
이 기사는 유용한 정보를 제공합니다 : [MySQL의 계층 적 데이터 관리] (http : //www.vbmysql. com/articles/database-design/managing-hierarchical-data-in-mysql) – Mat
은 0이 될 때까지 가능합니다. –