Tuesday, August 26, 2025

SQL and PL/SQL Query for the interview - 28 August 2025

 CREATE TABLE employees (

  emp_id     NUMBER,

  emp_name   VARCHAR2(100),

  manager_id NUMBER

);


INSERT INTO employees (emp_id, emp_name, manager_id) VALUES (1, 'Alice', NULL);  -- CEO

INSERT INTO employees (emp_id, emp_name, manager_id) VALUES (2, 'Bob', 1);       -- Reports to Alice

INSERT INTO employees (emp_id, emp_name, manager_id) VALUES (3, 'Carol', 1);     -- Reports to Alice

INSERT INTO employees (emp_id, emp_name, manager_id) VALUES (4, 'Dave', 2);      -- Reports to Bob

INSERT INTO employees (emp_id, emp_name, manager_id) VALUES (5, 'Eve', 2);       -- Reports to Bob

INSERT INTO employees (emp_id, emp_name, manager_id) VALUES (6, 'Frank', 3);     -- Reports to Carol

INSERT INTO employees (emp_id, emp_name, manager_id) VALUES (7, 'Grace', 4);     -- Reports to Dave


select * from employees;


SELECT 

    LPAD(' ', LEVEL * 2) || emp_name AS employee_hierarchy,

    emp_id,

    manager_id,

    LEVEL

FROM employees

START WITH manager_id IS NULL

CONNECT BY PRIOR emp_id = manager_id;


SELECT emp_name, LEVEL

FROM employees

START WITH manager_id IS NULL

CONNECT BY PRIOR emp_id = manager_id;


ODI Interview Question and Answers 29 September 2025

  Q: What is the basic difference between ETL and ELT approach? A: ETL extracts and transforms data outside the DB before loading, while E...