I have a database that looks like this:
CREATE TABLE Persons (
id int,
parentID int,
name varchar(255)
);
INSERT INTO Persons (id, parentID, name) VALUES ('1', '0', 'smith');
INSERT INTO Persons (id, parentID, name) VALUES ('2', '1', 'johnson');
INSERT INTO Persons (id, parentID, name) VALUES ('3', '2', 'spencer');
INSERT INTO Persons (id, parentID, name) VALUES ('4', '3', 'duke');
I want to fetch the persons name, and name of their parent and put that in an array. Then loop through the array recursively to get an output that looks similar to this:
smith
johnson (smith)
spencer (johnson, smith)
duke (spencer, johnson, smith)
I want to do this in php and sql.
I am unsure of the sql query to use, should i use an recursive CTE? Also how should i loop through it to get the output that i want?