@Luiz Fernando,
O que deve estar acontecendo é que o formato de data na sessão da aplicação está diferente do que você está usando, quando você escreve o código trunc(pls_segurado.DT_CONTRATACAO) <= '31/05/2014' você está apresentando dois problemas.
O primeiro que mencionei a pouco (relacionado a data) e o segundo que se existir um índice na coluna DT_CONTRATACAO da tabela PLS_SEGURADO, essa query não irá utilizá-lo devido a função TRUNC.
Portanto, para corrigir ambos os problemas problema, efetue a comparação de data com operadores e utilize a função TO_DATE na sua data informada para evitar que o Oracle efetue a conversão automática:
[b]
AND (pls_segurado.DT_CONTRATACAO) >= TO_DATE(’31/05/2014 00:00′,’dd/mm/yyyy hh24:mi’) AND pls_segurado.DT_CONTRATACAO) < TO_DATE('31/05/2014 00:00','dd/mm/yyyy hh24:mi') + 1)[/b]
Abraços.