Sumário

Search

  1. Prefácio
  2. Trabalhando com Transformações
  3. Transformação Agregador
  4. Transformação Personalizada
  5. Funções de Transformação Personalizada
  6. Transformação Mascaramento de Dados
  7. Exemplos de Mascaramento de Dados
  8. Transformação Expressão
  9. Transformação Procedimento Externo
  10. Transformação Filtros
  11. Transformação HTTP
  12. Transformação de Resolução de Identidade
  13. Transformação Java
  14. Referência da API da transformação Java
  15. Expressões Java
  16. Exemplo de Transformação Java
  17. Transformação Joiner
  18. Transformação Pesquisa
  19. Caches de Pesquisa
  20. Cache de Pesquisa Dinâmica
  21. Transformação Normalizador
  22. Transformação Classificação
  23. Transformação Roteador
  24. Transformação de Gerador de Sequência
  25. Transformação Classificador
  26. Transformação de Qualificador de Origem
  27. Transformação SQL
  28. Usando a Transformação SQL em um Mapeamento
  29. Transformação Procedimento Armazenado
  30. Transformação Controle de Transações
  31. Transformação União
  32. Transformação Dados Não Estruturados
  33. Transformação Estratégia de Atualização
  34. Transformações XML

Guia de Transformações

Guia de Transformações

Substituindo uma Cláusula ORDER BY

Substituindo uma Cláusula ORDER BY

Por padrão, o Serviço de Integração gera uma cláusula ORDER BY para uma pesquisa em cache. A cláusula ORDER BY contém todas as portas de condição de pesquisa. Para aumentar o desempenho, você pode suprimir a cláusula padrão ORDER BY e inserir uma ORDER BY de substituição com menos colunas.
O SQL de substituição deve retornar dados classificados nas chaves de pesquisa. Quando a transformação recuperar todas as linhas em uma pesquisa, o Serviço de Integração criará o cache de dados com as chaves em ordem classificada. O Serviço de Integração não poderá recuperar todas as linhas do cache se essas linhas não estiverem classificadas. Se os dados não forem classificados nas chaves, você poderá obter resultados inesperados.
Se você usar a otimização de empilhamento, não é possível substituir a cláusula ORDER BY ou suprimir a cláusula gerada ORDER BY por uma notação de comentário.
O Serviço de Integração sempre gera uma cláusula ORDER BY, mesmo se você inserir outra na substituição. Coloque dois hífens '--' depois substituição ORDER BY para suprimir a cláusula gerada ORDER BY. Por exemplo, uma transformação de Pesquisa usa a seguinte condição de pesquisa:
ITEM_ID = IN_ITEM_ID PRICE <= IN_PRICE
A transformação de Pesquisa inclui duas portas de condição de pesquisa usadas no mapeamento, ITEM_ID e PRICE. Quando você inserir a cláusula ORDER BY com uma ou mais colunas, digite as colunas na mesma ordem que as portas na condição de pesquisa. Você também deve incluir todas as palavras reservadas do banco de dados entre aspas. Insira a seguinte consulta de pesquisa na substituição SQL da pesquisa:
SELECT ITEMS_DIM.ITEM_NAME AS ITEM_NAME, ITEMS_DIM.PRICE AS PRICE, ITEMS_DIM.ITEM_ID AS ITEM_ID FROM ITEMS_DIM ORDER BY ITEMS_DIM.ITEM_ID --
Para substituir a cláusula padrão ORDER BY para uma pesquisa relacional, conclua as etapas a seguir:
  1. Gere a consulta de pesquisa na transformação Pesquisa.
  2. Insira uma cláusula ORDER BY que contenha as portas de condição na mesma ordem em que aparecem na condição da Pesquisa.
  3. Coloque dois hífens '--' como uma anotação de comentário depois da cláusula ORDER BY, para suprimir a cláusula ORDER BY que o Serviço de Integração gera.
    Se você substituir a consulta de pesquisa por uma cláusula ORDER BY sem adicionar a anotação de comentário, a pesquisa falha.
O Sybase tem uma limitação de ORDER BY de 16 colunas. Se a transformação Pesquisa tiver mais de 16 portas de pesquisa/saída, incluindo inclusive as portas na condição de pesquisa, substitua a cláusula ORDER BY ou use múltiplas transformações Pesquisa para consultar a tabela de pesquisa.