Ver Mensaje Individual
  #7 (permalink)  
Antiguo 10/06/2008, 07:52
MutenRo
 
Fecha de Ingreso: marzo-2008
Ubicación: Euskadi
Mensajes: 64
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: ¿bug en Oracle 10g con ROLLUP y ORDER BY?

Hola,

gracias por los enlaces, matanga, pero no tengo acceso a http://metalink.oracle.com (parece que hace falta un código para darse de alta).

De todas maneras lo he consultado en askTom.com y aquí teneis (al final de la página) lo que me ha contestado: http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:74320098178823

En resumidas cuentas, parece que en la versión 11g está arreglado (no lo he probado) y para la 10g se puede obtener el resultado correcto de esta manera:

Código:
WITH DATA AS
(SELECT /*+ materialize */ A, B, COUNT(DISTINCT C) AS C
FROM (
SELECT 1 AS A, 3 AS B, 2 AS C FROM DUAL
UNION ALL
SELECT 1 AS A, 3 AS B, 3 AS C FROM DUAL
UNION ALL
SELECT 2 AS A, 1 AS B, 2 AS C FROM DUAL
UNION ALL
SELECT 2 AS A, 3 AS B, 3 AS C FROM DUAL
)
GROUP BY ROLLUP(A), B
ORDER BY B)
SELECT * FROM DATA ORDER BY B;
Saludos.