add batch remove batch split batch comment selection show hidden batches hide batch highlight batch
db<>fiddle
donate feedback about
By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
create table tblreport (
ID int,
Name varchar(10),
ParentID int
);
Insert into tblreport(ID, Name, ParentID)Values(1, '1st', null)
,(2, '2nd', 1)
,(3, '3rd', 1)
,(4, '4th', 2)
,(5, '5th', 3);
SELECT *
FROM tblreport
WHERE FIND_IN_SET(ID,(SELECT GROUP_CONCAT(lv SEPARATOR ',') FROM (
SELECT @pv:=(SELECT GROUP_CONCAT(ID SEPARATOR ',')
FROM tblreport WHERE ParentID IN (@pv)) AS lv FROM tblreport
JOIN (SELECT @pv:=1)tmp
WHERE ParentID IN (@pv)) a));
ID Name ParentID
2 2nd 1
3 3rd 1
4 4th 2