2012-04-24 17 views
0

У меня очень простой запрос, который возвращает повторяющиеся строки случайным образом. Иногда у меня нет дубликатов, иногда у меня дубликат результирующего набора, а дублированная запись - разная. Я запускаю запрос на замороженную базу данных (данные не меняются). Моя версия Oracle - 11g.Набор результатов запроса случайным образом дублируется

У меня есть только один фильтр (в предложении WHERE) на дату:
to_char(date,'yyyy/mm') > = '2012/03'.

Любая помощь будет оценена по достоинству. Благодарим за внимание. С уважением.

Полный запрос:

select distinct 
    B.ORD_V_COD_ROWID as c1, 
    B.ORD_D_DAT_INSERITO_RIFIUTATO as c2, 
    B.ORD_D_DAT_RIFIUTO_SIS as c3 
    from 
     NRFTF_ORD_ORDINE A, 
     NRFTF_COR_ORDINI_RDS B 
    where (A.ORD_N_DWH_NUM_ORDINE = B.ORD_N_DWH_NUM_ORDINE 
    and B.ORD_V_COD_CAUSALE = 'CLIENTE NON AFFIDABILE' 
    and B.ORD_V_COD_STATO = 'RIFIUTATO' 
    and B.RDS_C_DWH_FLG_CANCELLAZIONE = '0' 
    and B.ORD_C_DWH_FLG_CANCELLAZIONE = '0' 
    and B.ORD_V_COD_CAUSALE = 'CLIENTE NON AFFIDABILE' 
    and B.PER_NAME_MONTH >= '2012/03' 
    and (B.ORD_D_DAT_RIFIUTO_SIS >= TO_DATE('2012-03-22 00:00:00' , 'YYYY-MM-DD HH24:MI:SS') 
    or B.ORD_D_DAT_INSERITO_RIFIUTATO >= TO_DATE('2012-03-22 00:00:00' , 'YYYY-MM-DD HH24:MI:SS')) 
    and TO_CHAR (A.ord_d_dat_creazione,'YYYY/MM') >= '2012/03') 
    order by c1, c2, c3 
+0

Какой запрос? Показать весь текст запроса, а не часть –

+0

Редактировать свой вопрос, чтобы показать запрос (не помещать его в комментарий ...) –

+0

B.PER_NAME_MONTH - это varchar2, не так ли? –

ответ

0

Интересно. Я видел несколько подобное поведение со сломанным индексом. Восстановление индекса фиксировало проблему на некоторое время, но затем не детерминированное поведение вернулось. В итоге мы получили поддержку Oracle. Они исправили его в действительно впечатляющем 24-часовом-глобусе-обновлении-данных-словаре-сессии.

Я бы попытался восстановить все таблицы и индексы с нуля.

Если это не поможет, и вы втройне проверили, что у вас нет ничего динамичного на вашей стороне, обратитесь в службу поддержки Oracle.

+0

Спасибо, Дженс, я собираюсь перестроить вовлеченные индексы, надеясь, что это сработает. – Natascia