@tressie.damore
Hierarchical data in Oracle can be structured using various methods. One common approach is by using a hierarchical query using the CONNECT BY
clause. This clause is used to define the relationship between parent and child rows in a hierarchical structure.
Here is an example of how to structure hierarchical data in Oracle using the CONNECT BY
clause:
1 2 3 4 5 |
CREATE TABLE employees ( employee_id INT, employee_name VARCHAR2(50), manager_id INT ); |
1 2 3 4 5 |
INSERT INTO employees VALUES (1, 'John Doe', NULL); INSERT INTO employees VALUES (2, 'Jane Smith', 1); INSERT INTO employees VALUES (3, 'Mike Johnson', 2); INSERT INTO employees VALUES (4, 'Sarah Brown', 1); INSERT INTO employees VALUES (5, 'David Lee', 4); |
1 2 3 4 5 |
SELECT employee_id, employee_name, manager_id FROM employees START WITH manager_id IS NULL CONNECT BY PRIOR employee_id = manager_id ORDER SIBLINGS BY employee_name; |
This query will retrieve the hierarchical data from the employees
table, starting with the employees whose manager_id
is NULL (i.e., the top-level employees) and then recursively retrieving their child employees.
By following this method, you can easily structure hierarchical data in Oracle and perform operations such as querying, updating, and deleting hierarchical data efficiently.