Passo Junção de várias tabelas
Descrição
Seção intitulada “Descrição”O passo Junção de várias tabelas une várias tabelas numa única operação. Em vez de encadear uma série de junções de duas tabelas — em que se perde a visão de conjunto e se repete o mesmo mapeamento de saída —, dispõe todas as tabelas num estruturador visual de grafos de junção, desenha as junções entre as respetivas colunas e produz uma única tabela de resultados.
Foi concebido para a forma mais comum das junções analíticas: uma tabela de factos unida a várias tabelas de dimensões ou de consulta. Pode unir até 32 tabelas de uma só vez.
Adicionar uma junção de várias tabelas
Seção intitulada “Adicionar uma junção de várias tabelas”Adicione-o como qualquer outro passo e escolha Junção de várias tabelas (no grupo Tabelas do menu de passos, ou arraste-o da paleta na área de desenho do fluxo de trabalho avançado). O editor do passo tem três separadores:
- Tabelas e junções — o estruturador visual onde adiciona tabelas e desenha junções.
- Colunas de saída — as colunas que a tabela de resultados irá conter.
- Filtro pós-junção — um filtro opcional aplicado ao resultado da junção.
Um indicador de estado mostra Pronto para guardar ou Alterações não guardadas à medida que trabalha.
Tabelas e junções
Seção intitulada “Tabelas e junções”Adicionar tabelas
Seção intitulada “Adicionar tabelas”Escolha Adicionar tabela para colocar uma tabela de origem na área de desenho. Cada tabela é apresentada como um cartão com a lista das suas colunas e recebe um alias — um nome curto que utiliza para referenciar as respetivas colunas noutros locais (como alias.column). Um alias tem de começar por uma letra ou por um sublinhado e não pode ser uma palavra-chave de SQL. Adicione as que forem necessárias (até 32) e escolha a Tabela de destino onde o resultado é escrito.
Se as colunas de uma tabela se alterarem no catálogo, utilize Obter novamente do servidor para substituir as colunas do cartão pelos valores mais recentes.
Tabelas dinâmicas e variáveis
Seção intitulada “Tabelas dinâmicas e variáveis”Tanto as tabelas de origem como a Tabela de destino podem ser indicadas por referência em vez de escolhidas na lista. Assinale Dinâmico no seletor de tabelas e escreva um destes valores:
- o nome de uma tabela —
FACT_GL - o caminho de um projeto —
/03 Results/FACT_GL
Qualquer um deles pode conter tokens {variable}, que são substituídos quando o fluxo de trabalho é executado — assim, /03 Results/FACT_GL_{year} escreve numa tabela diferente em cada período, conforme uma variável de projeto ou de fluxo de trabalho. A tabela de destino é criada se não existir.
As chavetas sem par são detetadas ao guardar, pelo que um FACT_{year com erro de escrita é assinalado no passo, em vez de falhar a meio de uma execução.
Desenhar junções
Seção intitulada “Desenhar junções”Arraste de um ponto de coluna de uma tabela para uma coluna de outra para criar uma junção (uma aresta). Selecione uma aresta para abrir o respetivo editor à direita, onde define:
-
Tipo de junção:
Tipo Mantém INNER apenas as correspondências LEFT todas as linhas da tabela da esquerda FULL todas as linhas de ambos os lados CROSS cada linha da esquerda combinada com cada linha da direita (sem condições) -
Condições de junção — uma ou mais comparações entre as colunas das duas tabelas. Adicione mais com + Adicionar condição, combine-as com AND / OR e utilize o conjunto completo de operadores (
=,<>,<,<=,>,>=,BETWEEN,IS NULL,IS NOT NULL,IN,NOT IN,LIKE,NOT LIKE). -
Etiqueta (opcional) — atribua um nome à junção (por exemplo,
customer-to-orders) para facilitar a leitura do diagrama.
O estruturador mantém o grafo de junção como uma árvore — cada tabela liga-se ao resultado através de exatamente uma junção, pelo que não há ciclos nem caminhos ambíguos, e uma tabela não pode ser unida a si própria. Para remover uma junção, selecione a aresta e escolha Eliminar aresta.
Filtrar uma tabela antes da junção
Seção intitulada “Filtrar uma tabela antes da junção”Cada tabela de origem tem um Filtro de entrada aplicado antes da junção — utilize-o para reduzir uma tabela às linhas que lhe interessam (referencie as respetivas colunas como alias.column). É distinto do Filtro pós-junção, que é executado depois de todas as junções.
Barra de ferramentas do estruturador
Seção intitulada “Barra de ferramentas do estruturador”- Arrumar esquema organiza automaticamente as tabelas e as junções da esquerda para a direita, pela ordem das junções.
- Ajustar à vista altera a escala e centra o grafo para que fique todo visível; também pode deslocar e ampliar manualmente.
- Filtrar colunas… reduz as colunas apresentadas nos cartões quando uma tabela tem muitas.
- Anular / Refazer recuam e avançam nas suas edições (Ctrl+Z / Ctrl+Y), e Histórico abre um painel com todas as alterações desde que abriu a caixa de diálogo, com Restaurar.
- Exportar transfere o diagrama de junção como imagem SVG — útil para documentação ou revisão.
Colunas de saída
Seção intitulada “Colunas de saída”No separador Colunas de saída, escolha as colunas que a tabela de resultados irá conter. Escolha entre as colunas de qualquer tabela unida — utilize Escolher da tela… para selecionar visualmente entre as colunas de todas as origens, ou Adicionar todas as colunas de origem para as trazer todas de uma vez. Para cada coluna, pode mudar-lhe o nome, definir o tipo de dados e aplicar uma agregação. Quando duas colunas de origem têm o mesmo nome, o PlaidCloud antepõe-lhes o alias da origem para que não colidam.
O valor de cada coluna de saída provém de exatamente um de três locais:
- Uma coluna de origem — defina Alias de origem como o alias da área de desenho a que pertence e Origem como a referência
alias.column. Ambos são obrigatórios; uma coluna de origem indica sempre a tabela de onde provém. - Uma constante — o mesmo valor fixo em todas as linhas.
- Uma expressão — escolha Adicionar coluna de expressão para acrescentar uma linha e abrir o editor de expressões. As expressões podem referenciar qualquer alias de origem da área de desenho como
alias.column, pelo que é assim que se constrói um valor que abrange várias tabelas unidas (umCASEentre duas tabelas, uma concatenação, um montante calculado). Deixe Alias de origem e Origem vazios numa linha de expressão.
Preencher mais do que um deles é um erro, tal como não preencher nenhum.
A célula Expressão abre o editor de expressões padrão do PlaidCloud, com todas as tabelas da área de desenho no respetivo navegador de colunas, a lista de funções e o preenchimento automático.
As colunas de saída acompanham a área de desenho: se mudar o nome de uma origem no separador Tabelas e junções, as respetivas colunas de saída passam para o novo alias e, se remover uma origem, as suas colunas de saída são eliminadas — pelo que nunca ficam colunas a apontar para uma tabela que já não faz parte da junção.
Filtro pós-junção
Seção intitulada “Filtro pós-junção”O separador Filtro pós-junção aplica um filtro opcional ao resultado da junção antes de este ser escrito na tabela de destino — o equivalente a uma cláusula HAVING do SQL. Clique na caixa para abrir o editor de expressões; as colunas de saída estão listadas no respetivo navegador de colunas e são referenciadas como result.column_name — os alias de origem não estão no âmbito aqui. As Referências disponíveis sob a caixa listam todas as referências que pode utilizar. Deixe-o vazio para não aplicar filtragem pós-junção.
Validação
Seção intitulada “Validação”O PlaidCloud valida a junção à medida que a constrói e novamente quando o passo é executado. Se algo estiver errado — uma configuração não suportada, um ciclo, um alias duplicado, uma coluna de saída que não define nenhum de Origem / Constante / Expressão (ou define mais do que um), ou uma coluna que já não existe —, o separador passa a apresentar um distintivo ⚠ com a contagem, o estruturador assinala a tabela ou a junção em causa e o guardar é rejeitado com o motivo. Se guardar com problemas por resolver, é levado para o separador que contém o primeiro; Ir para o problema faz o mesmo a pedido.
Ao guardar, o PlaidCloud verifica também cada expressão de coluna de saída em relação às entradas da própria junção por alias (alias.column), tal como o passo é executado, e verifica o Filtro pós-junção. Uma expressão com erro é assinalada na respetiva coluna de saída e um Filtro pós-junção com erro é assinalado no filtro. Se a junção estiver definida como Transportar também colunas indicadas em tempo de execução e não estiver a resumir, a verificação das expressões é ignorada ao guardar, porque as colunas são adicionadas em tempo de execução; essas expressões são verificadas quando o passo é executado. Os filtros por origem também são verificados quando o passo é executado.
Executar o passo
Seção intitulada “Executar o passo”A Junção de várias tabelas é executada como qualquer outro passo. Executa todas as junções numa única operação e escreve as colunas mapeadas na tabela de destino.
Passos seguintes
Seção intitulada “Passos seguintes”- Referência da Junção de várias tabelas — lista concisa de campos
- Passos de tabela — o conjunto completo de transformações de tabelas
- Fluxos de trabalho avançados — crie na área de desenho visual