UNWIND $keys as id OPTIONAL MATCH (v:Vendor { id: id.vendorId }) WHERE id.subaccountId = 0 WITH v, id // Returning Subaccounts OPTIONAL MATCH (s:Subaccount { id: id.subaccountId }) WHERE id.vendorId IS NULL OR (s)<-[:OWNS]-(:Vendor { id: id.vendorId }) WITH id, coalesce(v, s) AS label RETURN id, CASE WHEN label IS NULL THEN NULL ELSE { uuid: label.uuid } END