Se une a SAP HANA: Tipos, sintaxis y ejemplos
⚡ Resumen inteligente
SAP HANA combina tablas y vistas de información para que un modelo devuelva exactamente las filas que necesita un informe. Los tipos internos, externos, referenciales, de texto, temporales y espaciales modifican el rendimiento, el manejo de la cardinalidad y el tamaño del resultado.
¿Qué es SAP ¿Únete a HANA?
Unirse en SAP HANA combina filas de dos o más tablas, o de una tabla y una vista de información, y devuelve los valores requeridos por la consulta. Las uniones se definen gráficamente en el nodo de unión de una vista de información, y también se escriben directamente en sentencias SQL que se ejecutan en la base de datos.
Las dos formas no son idénticas. Una unión dentro de una vista de cálculo es ejecutado por el SAP Motor de cálculo HANA, que puede omitir una tabla cuando no proviene de ella ninguna columna solicitada, mientras que una unión escrita en SAP HANA-SQL Siempre se ejecuta exactamente como está programado.
Los siguientes tipos de unión están disponibles cuando SAP Las tablas y las vistas de información de HANA se combinan.
| Tipo de unión | Usos | Comentario |
|---|---|---|
| INTERIOR | La unión interna selecciona el conjunto de registros que coinciden en ambas tablas. | Las filas que no tengan pareja a ninguno de los lados se descartan. |
| IZQUIERDA ÚNICA EXTERNA | La unión externa izquierda selecciona el conjunto completo de registros de la primera tabla, junto con el registro correspondiente de la segunda tabla, si está disponible. | Si no existe ninguna coincidencia en la segunda tabla, se devuelven valores nulos para sus columnas. |
| UNIÓN EXTERIOR DERECHA | La unión externa derecha selecciona el conjunto completo de registros de la segunda tabla, con el registro correspondiente de la primera tabla cuando esté disponible. | Si no existe ninguna coincidencia en la primera tabla, se devuelven valores nulos para sus columnas. |
| UNIÓN EXTERIOR COMPLETA | La unión externa completa selecciona todos los registros de ambas tablas. | Las filas que no coinciden en ambos lados se rellenan con valores nulos. |
| ÚNETE REFERENCIAL | Se comporta como una unión interna, bajo el supuesto de que se mantiene la integridad referencial entre las dos tablas. | Disponible en vistas de atributos, vistas analíticas y nodos de unión de vistas de cálculo. |
| ÚNETE POR TEXTO | La unión de texto selecciona la descripción específica del idioma que pertenece a una clave, utilizando la columna de idioma de la tabla de texto. | La columna de idioma, normalmente SPRAS, debe estar marcada en las propiedades de la unión. |
Las uniones referenciales y de texto son tipos exclusivos de modelado. Existen en el nodo de unión de una vista de información y no tienen una palabra clave equivalente en SQL, razón por la cual aparecen en SAP Modelado HANA herramientas en lugar de en una instrucción SELECT.
SAP Sintaxis de unión de HANA y ejemplos SQL
Las uniones internas y externas se escriben en SAP HANA SQL utiliza la sintaxis estándar ANSI, por lo que una consulta probada en otra base de datos relacional generalmente se ejecuta sin cambios. El siguiente ejemplo combina una tabla de pedidos de venta con una tabla de clientes y luego con una tabla de estados.
SELECT so.ORDER_ID, c.NAME, s.STATE_NAME, so.AMOUNT FROM SALES_ORDER AS so INNER JOIN CUSTOMER AS c ON so.CUSTOMER_ID = c.CUSTOMER_ID LEFT OUTER JOIN STATE AS s ON c.STATE_CODE = s.STATE_CODE WHERE so.AMOUNT > 1000 ORDER BY so.ORDER_ID;
La unión interna descarta todos los pedidos de venta cuyo registro maestro de cliente falte. La unión externa izquierda conserva todos los pedidos restantes, incluso cuando el código de estado no tiene descripción, y devuelve un nombre de estado nulo para esas filas. Intercambiarping Por lo tanto, los dos tipos de unión modifican el número de filas, no solo las columnas que se muestran.
Los modelos gráficos alcanzan el mismo resultado sin SQL. Se coloca un nodo de unión entre dos fuentes de datos en el editor de vistas, se asignan las columnas que forman la condición de unión y se configuran el tipo de unión y la cardinalidad en las propiedades del nodo. SAP Estudio Hana Tanto el editor como el modelador basado en navegador generan el código SQL en tiempo de ejecución a partir de esas configuraciones.
Tipos de unión avanzados en SAP Vistas de cálculo de HANA
Las vistas de cálculo añaden un comportamiento de unión que SQL estándar no expresa con una sola palabra clave. Estas opciones se configuran en el nodo de unión o mediante un tipo de nodo específico.
| Tipo de unión | ¿Qué hace? | Uso típico |
|---|---|---|
| Unión temporal | Compara los registros de transacciones con la versión de datos maestros que era válida en una fecha determinada, utilizando los campos "desde" y "hasta" de la fuente de datos maestros. | Datos maestros dependientes del tiempo, como un centro de costos que cambió de propietario. El tipo de unión debe ser referencial y la clave debe ser una fecha, una marca de tiempo o un número entero. |
| unión espacial | Une dos fuentes en una columna geométrica con un predicado espacial como intersecta o dentro, en lugar de en una condición de igualdad. | Análisis geográfico, por ejemplo, relacionando la ubicación de los clientes con los territorios de ventas. |
| Unión dinámica | Construye la condición de unión en tiempo de ejecución a partir de las columnas de unión que la consulta solicita realmente, agregando las columnas restantes antes de que se ejecute la unión. | Uniones de varias columnas donde la granularidad de la consulta varía. Se debe solicitar al menos una columna de unión; de lo contrario, la consulta fallará. |
| Estrella se une | Une una fuente de datos con varias vistas de cálculo de dimensiones en un único nodo. | Modelos de esquema en estrella que reemplazan la vista analítica anterior. |
Una unión dinámica modifica la secuencia de operaciones, no la regla de coincidencia. En una unión estática, cada columna definida participa en la condición y la agregación se realiza posteriormente; en una unión dinámica, las columnas no solicitadas se agregan primero, lo que generalmente resulta en menos filas y un total diferente. Por lo tanto, ambas responden a diferentes preguntas de negocio, por lo que el indicador se establece deliberadamente, no como una optimización general.
Cómo elegir el tipo de unión correcto en SAP Modelado HANA
La selección de la unión afecta tanto a la corrección como al tiempo de ejecución, y la unión más rápida es la que SAP HANA nunca necesita ejecutarse. Las siguientes reglas cubren la mayoría de las decisiones de modelado.
- unión referencial — úselo solo cuando se garantice que cada fila de un lado tenga una pareja, ya que el motor puede omitir la unión por completo cuando no se solicita ninguna columna de la tabla unida.
- Unir internamente — Úselo cuando no se garantice la integridad referencial y se deban excluir las filas que no coincidan.
- Izquierda combinación externa — úselo cuando la primera tabla determina el resultado y aún deben aparecer los datos maestros faltantes.
- Unión externa completa — Úselo con moderación, ya que es la opción más cara y rara vez se requiere en los modelos de informes.
- Unirse por texto — úselo siempre que una columna de descripción dependa del idioma de inicio de sesión.
Dos propiedades del nodo son tan importantes como el tipo de unión en sí. La cardinalidad (1:1, 1:n, n:1 o n:m) le indica al motor cuántas filas esperar en cada lado, y la función Proponer cardinalidad la deriva de los datos. El indicador Optimizar columnas de unión permite entonces SAP HANA elimina una columna de unión del plan de ejecución cuando la consulta no la solicita. Una cardinalidad incorrecta puede multiplicar silenciosamente las medidas, por lo que se verifica con los datos en lugar de asumirla.
Una restricción adicional moldea el nuevo desarrollo. Las vistas de atributos y las vistas analíticas están obsoletas, y SAP Se recomienda convertirlos en vistas de cálculo gráficas, por lo que una unión diseñada hoy normalmente se construye en una unión de vista de cálculo o un nodo de unión en estrella. Los antecedentes sobre los objetos más antiguos siguen siendo útiles cuando se mantiene un modelo existente, y la vista de atributo y visión analítica Las páginas describen cómo se configuraron esas uniones. SAP Material didáctico sobre unir nodos cubre el mismo comportamiento en SAP HANA Cloud y la red más amplia SAP Tutorial de HANA Esta serie explica dónde encajan las vistas de información en la plataforma.
