SELECT COALESCE( ( SELECT p.id FROM Buls_address_level p_level JOIN Buls_address_name p ON p.id = p_level.id WHERE p_level.id_address_level < l.id_address_level ORDER BY p_level.id_address_level DESC LIMIT 1 ), n.id ) AS parent_id, n.id, n.name, n.lname, l.id_address_level, i.id_address_index FROM Buls_address_name n JOIN Buls_address_level l ON n.id = l.id JOIN Buls_address_index i ON n.id = i.id;