fullouter join

Una fullouter combinación combina el efecto de aplicar combinaciones externas izquierda y derecha. Para las columnas de la tabla que carecen de una fila coincidente, el conjunto de resultados contiene null valores. Para los registros que coinciden, se genera una sola fila en el conjunto de resultados que contiene campos rellenados de ambas tablas.

Diagrama que muestra cómo funciona la combinación.

Syntax

LeftTable|joinkind=fullouter [ Sugerencias ] RightTableonCondiciones

Obtenga más información sobre las convenciones de sintaxis.

Parámetros

Nombre Tipo Requerido Descripción
LeftTable string ✔️ La tabla izquierda o expresión tabular, a veces denominada tabla externa, cuyas filas se van a combinar. Se indica como $left.
Sugerencias string Cero o más sugerencias de combinación (separados por espacios) con el formato Name=Value, que controlan el comportamiento de la operación de coincidencia de filas y el plan de ejecución. Para más información, consulte Sugerencias.
RightTable string ✔️ La tabla derecha o expresión tabular, a veces denominada tabla interna, cuyas filas se van a combinar. Se indica como $right.
Condiciones string ✔️ Determina la correspondencia entre las filas de LeftTable y las de RightTable. Si las columnas que desea hacer coincidir tienen el mismo nombre en ambas tablas, utilice la sintaxis ONColumnName. De lo contrario, use la sintaxis ON $left.LeftColumn==$right.RightColumn. Para especificar varias condiciones, puede usar la palabra clave "and" o separarlas con comas. Si usa comas, las condiciones se evalúan mediante el operador lógico "and".

Sugerencia

Para obtener el mejor rendimiento, si una tabla siempre es menor que la otra, úsela como lado izquierdo de la combinación.

Sugerencias

Nombre del parámetro Valores Descripción
hint.remote auto, left, local, right Consulte Unión entre clústeres
hint.strategy=broadcast Especifica la manera de compartir la carga de consultas en los nodos del clúster. Ver combinación de difusión
hint.shufflekey=<key> La consulta shufflekey comparte la carga de consultas en los nodos del clúster mediante una clave para crear particiones de datos. Consulte la consulta aleatoria.
hint.strategy=shuffle La consulta de estrategia shuffle comparte la carga de consultas en los nodos del clúster, donde cada nodo procesa una partición de los datos. Consulte la consulta aleatoria.

Devoluciones

Esquema: todas las columnas de ambas tablas, incluidas las claves coincidentes.
Filas: todos los registros de ambas tablas con celdas no coincidentes rellenadas con null.

Ejemplo

let X = datatable(Key:string, Value1:long)
[
    'a',1,
    'b',2,
    'b',3,
    'c',4
];
let Y = datatable(Key:string, Value2:long)
[
    'b',10,
    'c',20,
    'c',30,
    'd',40
];
X | join kind=fullouter Y on Key

Salida

Clave Valor1 Tecla1 Valor2
a 1
b 2 b 10
b 3 b 10
c 4 c 20
c 4 c 30
d 40