2012-02-24 8 views
6

He leído que Oracle admite unión conjunta con predicados de unión de desigualdad. ¿Hay referencia en línea al algoritmo utilizado en la implementación de dicha unión? Si alguien sabe cómo hacerlo, ¿puede ponerlo en respuesta?Algoritmo para combinación de fusión con condición de desigualdad

+0

¿Esto es diferente de la igualdad? – zinking

+0

@Prafulla: si su pregunta no ha sido respondida, debería considerar marcarla para la migración a (el sitio hermano): dba.stackexchange.com –

Respuesta

-1

Hay un ejemplo aquí: http://www.serkey.com/oracle-skyline-query-challenge-bdh859.html

Es esto lo que está buscando hacer? (la palabra clave es "soft-merge")

+0

El enlace está roto. –

+0

Se publicó hace casi dos años: consulte la máquina de retorno –

+0

"La máquina que sirve este archivo no funciona. Estamos trabajando en ello". Esta es la razón por la que la mayoría de las respuestas de solo enlaces se eliminan en estos días. –

1

This es lo que estás buscando.

7,4 Ordenar enlaces intercalados

Ordenar enlaces intercalados pueden unirse a las filas de dos fuentes independientes. En general, , las uniones hash funcionan mejor que las combinaciones merge. Sin embargo, fusión se une especie puede funcionar mejor que hash si tanto de los siguientes condiciones:

Las fuentes de filas se ordenan. No se requiere una operación de clasificación. Sin embargo, si una combinación de combinación de tipos implica elegir un método de acceso más lento (un análisis de índice en comparación con un análisis de tabla completo), entonces se puede perder el beneficio de usar una fusión de clasificación.

Las combinaciones de combinación de orden son útiles cuando la condición de combinación entre dos tablas es una condición de desigualdad como <, < =,> o> =. Ordenar fusiones se une a funcionan mejor que los bucles anidados se une a grandes conjuntos de datos. Hash se une a requiere una condición de igualdad.

En unir combinación, no existe el concepto de una tabla de conducción. El unirse a consta de dos pasos:

Ordenar operación de unión

Tanto las entradas se clasifican en la clave de combinación.

combinación de mezcla operación

Las listas ordenadas se fusionan.

Si la entrada se ordena por la columna de unión, no se realiza una operación de unión de ordenación para esa fuente de fila. Sin embargo, una fusión de combinación join siempre crea un búfer de ordenamiento posicionable para el lado derecho de la unión para que pueda buscar la última coincidencia en el caso en que valores duplicados de clave de unión salgan del lado izquierdo de la unión.

Cuestiones relacionadas