Điều này xây dựng một truy vấn phân cấp. connect by
xác định cách đi từ nút cha đến nút con của nó và nút con con của chúng. Trong trường hợp này, định nghĩa kết nối của bạn chỉ là khi level >= 4
. Bí quyết ở đây là level
là cột giả, như rownum
, vì vậy điều kiện chỉ được thỏa mãn bởi số cung cấp nhỏ hơn bằng nhau (trong trường hợp này là 4). Bạn cũng có thể làm điều này với rownum:
select level from dual connect by rownum <= 4;
Level
được sử dụng để đếm độ sâu của các kết nối, vì vậy cha mẹ sẽ là 1, con 2, con của con 3, v.v. Vì vậy, hãy nghĩ về nó một rownum cho các truy vấn phân cấp.