Participa SAP HANA: Tipos, Sintaxe e Exemplos

⚡ Resumo Inteligente

SAP O HANA combina tabelas e visualizações de informações para que um modelo retorne exatamente as linhas necessárias para um relatório. Os tipos interno, externo, referencial, textual, temporal e espacial alteram o desempenho, o tratamento da cardinalidade e o tamanho do resultado.

  • 🔗 Escopo: Junções vinculam tabelas e visualizações de informações dentro de modelos gráficos e dentro de instruções SQL simples no banco de dados.
  • ☑️ Tipos padrão: As junções internas, externas à esquerda, externas à direita e externas completas se comportam exatamente como no SQL ANSI.
  • ✅ Tipos exclusivos para modelagem: As junções referenciais e de texto existem apenas em visualizações de informações e não possuem equivalente em palavras-chave SQL.
  • 🧪 Nós avançados: As junções temporais, espaciais, dinâmicas e em estrela ampliam as perspectivas de cálculo além da simples correspondência de colunas.
  • 🛠️ Alavancas de desempenho: A cardinalidade e o indicador Otimizar colunas de junção determinam se SAP O HANA pode limpar uma tabela em tempo de execução.
  • 📈 Modernização: As visualizações de atributos e analíticas estão obsoletas, portanto, novas junções devem ser feitas em visualizações de cálculo gráficas.

Tipos de junção usados ​​para combinar tabelas e visualizações de informações em SAP HANA

O que é a SAP HANA Entrar?

Junte-se a nós SAP O HANA combina linhas de duas ou mais tabelas, ou de uma tabela e uma visão de informações, e retorna os valores necessários para a consulta. As junções são definidas graficamente no nó de junção de uma visão de informações e também são escritas diretamente em instruções SQL executadas no banco de dados.

As duas formas não são idênticas. Uma junção dentro de uma vista de cálculo é executado pelo SAP O mecanismo de cálculo HANA pode ignorar uma tabela quando nenhuma coluna solicitada for encontrada nela, enquanto uma junção escrita em SAP SQL HANA é sempre executado exatamente como programado.

Os seguintes tipos de junção estão disponíveis quando SAP As tabelas e visualizações de informações do HANA são combinadas.

Tipo de junção Uso Comentário
INNER A junção interna seleciona o conjunto de registros que correspondem em ambas as tabelas. As linhas sem um par em cada lado são descartadas.
JUNÇÃO EXTERNA ESQUERDA A junção externa à esquerda seleciona o conjunto completo de registros da primeira tabela, juntamente com o registro correspondente da segunda tabela, quando disponível. Caso não haja correspondência na segunda tabela, serão retornados valores nulos para as colunas correspondentes.
DIREITO OUTER JOIN A junção externa à direita seleciona o conjunto completo de registros da segunda tabela, juntamente com o registro correspondente da primeira tabela, quando disponível. Caso não haja correspondência na primeira tabela, serão retornados valores nulos para as suas colunas.
JUNÇÃO EXTERNA COMPLETA A junção externa completa seleciona todos os registros de ambas as tabelas. As linhas sem correspondência em ambos os lados são preenchidas com valores nulos.
JUNÇÃO REFERENCIAL Comporta-se como uma junção interna, partindo do pressuposto de que a integridade referencial é mantida entre as duas tabelas. Disponível em visualizações de atributos, visualizações analíticas e nós de junção de visualizações de cálculo.
TEXTO JUNTAR A junção de texto seleciona a descrição específica do idioma que pertence a uma chave, usando a coluna de idioma da tabela de texto. A coluna de idioma, geralmente SPRAS, deve ser sinalizada nas propriedades de junção.

As junções referenciais e textuais são tipos exclusivos de modelagem. Elas existem no nó de junção de uma visão de informações e não possuem palavra-chave equivalente em SQL, razão pela qual aparecem em SAP Modelagem HANA ferramentas em vez de em uma instrução SELECT.

SAP Sintaxe de junção e exemplos de SQL do HANA

As junções internas e externas são escritas em SAP O SQL do HANA utiliza a sintaxe ANSI padrão, portanto, uma consulta testada em outro banco de dados relacional geralmente é executada sem alterações. O exemplo abaixo une uma tabela de pedidos de venda a uma tabela de clientes e, em seguida, a uma tabela 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;

A junção interna remove todos os pedidos de venda cujo registro mestre do cliente esteja ausente. A junção externa à esquerda mantém todos os pedidos restantes, mesmo quando o código do estado não possui descrição, e retorna um nome de estado nulo para essas linhas. Trocarping Os dois tipos de junção alteram, portanto, a contagem de linhas, e não apenas as colunas exibidas.

Os modelos gráficos alcançam o mesmo resultado sem SQL. Um nó de junção é colocado entre duas fontes de dados no editor de visualização, as colunas que formam a condição de junção são mapeadas e o tipo e a cardinalidade da junção são definidos nas propriedades do nó. SAP HANA Studio Tanto o editor quanto o modelador baseado em navegador geram o SQL de tempo de execução a partir dessas configurações.

Tipos de junção avançados em SAP Visualizações de cálculo do HANA

As visualizações de cálculo adicionam comportamentos de junção que o SQL puro não expressa em uma única palavra-chave. Essas opções são configuradas no nó de junção ou por meio de um tipo de nó dedicado.

Tipo de junção O que ele faz Uso típico
Junção temporal Compara os registros de transação com a versão dos dados mestres que era válida em uma determinada data, usando os campos "de" e "até" da fonte de dados mestres. Dados mestres dependentes do tempo, como um centro de custos que mudou de proprietário. O tipo de junção deve ser referencial e a chave deve ser uma data, um carimbo de data/hora ou um número inteiro.
Junção espacial Une duas fontes em uma coluna geométrica com um predicado espacial, como "intersecta" ou "está dentro", em vez de usar uma condição de igualdade. Análise geográfica, por exemplo, relacionando a localização dos clientes com os territórios de vendas.
Junção dinâmica Constrói a condição de junção em tempo de execução a partir das colunas de junção que a consulta realmente solicita, agregando as colunas restantes antes da execução da junção. Junções de múltiplas colunas onde a granularidade da consulta varia. Pelo menos uma coluna de junção deve ser solicitada; caso contrário, a consulta falhará.
Junte-se à estrela Une uma fonte de dados a várias visualizações de cálculo de dimensões em um único nó. Modelos de esquema em estrela que substituem a visão analítica mais antiga.

Uma junção dinâmica altera a sequência de operações em vez da regra de correspondência. Em uma junção estática, cada coluna definida participa da condição e a agregação ocorre posteriormente; em uma junção dinâmica, as colunas não solicitadas são agregadas primeiro, o que geralmente retorna menos linhas e um total diferente. Portanto, as duas respondem a diferentes questões de negócios, e por isso o parâmetro é definido deliberadamente, não como uma otimização geral.

Como escolher o tipo de junção correto SAP Modelagem HANA

A seleção da junção afeta tanto a correção quanto o tempo de execução, e a junção mais rápida é aquela que... SAP O HANA nunca precisa executar. As regras a seguir abrangem a maioria das decisões de modelagem.

  • Junção referencial — Use-o somente quando for garantido que cada linha de um dos lados possui um par, pois o mecanismo pode omitir a junção completamente quando nenhuma coluna da tabela unida for solicitada.
  • Junção interna — Use-o quando a integridade referencial não for garantida e as linhas não correspondentes precisarem ser excluídas.
  • Junção externa esquerda — Use-o quando a primeira tabela determinar o resultado e os dados mestres ausentes ainda precisarem aparecer.
  • Junção externa completa — Use-o com moderação, pois é a opção mais cara e raramente é necessária nos modelos de relatório.
  • Junte-se ao texto — Use-o sempre que uma coluna de descrição depender do idioma de login.

Duas propriedades do nó são tão importantes quanto o próprio tipo de junção. A cardinalidade (1:1, 1:n, n:1 ou n:m) informa ao mecanismo quantas linhas esperar em cada lado, e a função Propor Cardinalidade a deriva dos dados. O sinalizador Otimizar Colunas de Junção permite então SAP O HANA remove uma coluna de junção do plano de execução quando a consulta não a solicita. Uma cardinalidade incorreta pode multiplicar medidas silenciosamente, portanto, ela é verificada em relação aos dados em vez de ser assumida.

Uma outra restrição molda o novo desenvolvimento. As visualizações de atributos e as visualizações analíticas estão obsoletas, e SAP Recomenda-se convertê-los em visualizações de cálculo gráficas; portanto, uma junção projetada hoje normalmente é construída em um nó de junção de visualização de cálculo ou junção em estrela. O conhecimento prévio sobre os objetos mais antigos ainda é útil quando um modelo existente é mantido, e o visualização de atributos e visão analítica As páginas descrevem como essas junções foram configuradas. SAP Material didático sobre nós de junção abrange o mesmo comportamento em SAP HANA Cloud e o contexto mais amplo SAP Tutorial HANA Esta série explica onde as visualizações de informação se encaixam na plataforma.

Perguntas Frequentes

A cardinalidade (1:1, 1:n, n:1, n:m) informa ao mecanismo quantas linhas correspondentes esperar em cada lado. Isso permite a eliminação de junções desnecessárias e protege agregados. A cardinalidade proposta deriva a configuração dos dados, o que é mais seguro do que adivinhar.

permite SAP O HANA remove uma coluna de junção do plano de execução quando a consulta do cliente nunca a solicita. Menos colunas significam menos grupos.pinge tempos de execução mais rápidos, mas os resultados podem mudar se a coluna removida influenciou o nível de agregação.

Os objetos existentes ainda funcionam, mas ambos os tipos de visualização estão obsoletos e não podem ser adicionados a novas visualizações de cálculo. SAP Recomenda-se convertê-los em visualizações de cálculo gráfico, onde os mesmos tipos de junção, além da junção em estrela e da junção espacial, estão disponíveis.

É necessário manter as linhas não correspondentes de ambos os lados, de modo que nenhuma tabela possa ser eliminada e todas as linhas sejam materializadas. Uma junção referencial, por outro lado, pode ser completamente ignorada quando a consulta não solicita nenhuma coluna da tabela unida.

A coluna de idioma da tabela de texto, normalmente SPRAS em SAP tabelas, é sinalizado nas propriedades de junção. SAP O HANA então filtra as descrições pelo idioma da sessão, de forma que um único modelo atenda a todos os idiomas de login sem a necessidade de uma visualização separada.

Sim. Um nó de junção aceita tabelas, funções de tabela e outras visualizações de cálculo como fontes de dados, que é como as visualizações de dimensão são anexadas a uma tabela de fatos. Os nomes das colunas podem ser diferentes, já que a condição de junção mapeia as colunas explicitamente.

O aprendizado de máquina analisa os valores das colunas para sugerir chaves de junção e cardinalidade, sinaliza modelos cujas métricas aumentam após uma junção e agrupa visualizações quase duplicadas. SAP A plataforma também incorpora serviços preditivos e generativos, de modo que a pontuação é executada em paralelo com os dados modelados.

O Copilot elabora junções SQL padrão de forma competente e agiliza instruções SELECT repetitivas. Ele não conhece a integridade referencial de um esquema, portanto, o tipo de junção, a cardinalidade e opções exclusivas de modelagem, como a junção de texto, ainda precisam ser revisadas em relação aos dados reais.

Resuma esta postagem com: