是左右连接的写法问题吧
   FROM ni_contract_out_main OUT
        LEFT JOIN ni_contract_loss loss
               ON OUT.req_no = loss.req_no
              AND OUT.contract_id = loss.contract_id
              AND OUT.item_no = loss.item_no_cp
        LEFT JOIN ni_contract_item item
               ON loss.item_no = item.item_no
        LEFT JOIN ni_contract_in_main  m
               ON m.req_no = loss.req_no
              AND m.contract_id = loss.contract_id
              AND m.item_no = loss.item_no
         WHERE OUT.req_no =
               (SELECT MAX(c.req_no) --取最大文号 
                  FROM ni_contract c
                 WHERE c.contract_id = OUT.contract_id)