SELECT DISTINCT parent_name,isAvailable FROM `tbl_reports` a WHERE NOT EXISTS(SELECT 1 FROM `tbl_reports` WHERE a.`parent_name`=`parent_name` AND `isAvailable`=0) OR EXISTS(SELECT 1 FROM `tbl_reports` WHERE a.`parent_name`=`parent_name` AND `isAvailable`=0 AND a.`isAvailable`=1) OR NOT EXISTS(SELECT 1 FROM `tbl_reports` WHERE a.`parent_name`=`parent_name` AND `isAvailable`=1 )
WHERE a.`parent_name`=`parent_name` AND `isAvailable`=0)
OR
EXISTS(SELECT 1 FROM `tbl_reports`
WHERE a.`parent_name`=`parent_name` AND `isAvailable`=0 AND a.`isAvailable`=1)
OR
NOT EXISTS(SELECT 1 FROM `tbl_reports`
WHERE a.`parent_name`=`parent_name` AND `isAvailable`=1 )