SnowConvert AI - Oracle - Selecionar¶
In this section you could find information about the select query syntax and its conversions.
Nota
Algumas partes dos códigos de saída foram omitidas por motivos de clareza.
Conversão geral de Select¶
Select simples¶
Oracle:¶
Snowflake:¶
Cláusula Where¶
Oracle:¶
Snowflake:¶
Cláusula Order by¶
Oracle:¶
Snowflake:¶
Group by¶
Oracle:¶
Snowflake:¶
Cláusula Model¶
A cláusula Model ainda não é compatível.
Cláusula Row Limiting¶
Oracle:¶
Snowflake:¶
Nota
No Oracle, FETCH / OFFSET WITH TIES é ignorado quando nenhum ORDER BY é especificado em SELECT. Esse caso será transformado em um FETCH / OFFSET com a palavra-chave ONLY no Snowflake. Observe que no Snowflake a palavra-chave ONLY não tem efeito nos resultados e é usada apenas para facilitar a leitura.
Pivô¶
O Snowflake não é compatível com as seguintes instruções:\ - Rename columns \ - Multiple Columns
Oracle:¶
Snowflake:¶
Unpivot¶
O Snowflake não é compatível com as seguintes instruções:\ - INCLUDE / EXCLUDE NULLS
Oracle:¶
Snowflake:¶
Transformação de JOIN (+) para sintaxe ANSI¶
Perigo
Esta tradução está atualmente desativada e destina-se apenas a referência para traduções feitas com versões anteriores do SnowConvert AI. Para a tradução atual, verifique a seção acima.
O SnowConvert AI traduz a sintaxe de junção externa especial (+) NON-ANSI para a sintaxe de junção externa ANSI. Esta subseção mostra alguns exemplos:
Para LEFTOUTERJOIN¶
Exemplo 1:
Oracle:¶
Snowflake:¶
Exemplo 2:
Oracle:¶
Snowflake:¶
Exemplo 3: Junção múltipla
Oracle:¶
Snowflake:¶
Exemplo 4: Junção com outros tipos de condicionais
Oracle:¶
Snowflake:¶
Exemplo 5: Junção com (+) dentro de uma função
Oracle:¶
Snowflake:¶
Aviso
Observe que alguns dos padrões que foram convertidos para LEFT OUTER JOIN podem recuperar as linhas em uma ordem diferente.
Para CROSSJOIN¶
Exemplo 6: Caso complexo que requer o uso de CROSS JOIN
Oracle:¶
Snowflake:¶
Consultas hierárquicas¶
Hierarchical queries in Snowflake allow you to organize and retrieve data in a tree-like structure, typically using the CONNECT BY clause. This clause joins a table to itself to process hierarchical data in the table.
Amostra de padrões da origem¶
Oracle:¶
Snowflake:¶
Consulta Select Flashback¶
Descrição¶
Oracle
A cláusula de Flashback Query no Oracle recupera dados anteriores de uma tabela, visualização ou exibição materializada. No Oracle, os usos podem incluir:
Restaurar dados excluídos ou desfazer um commit incorreto, comparar os dados atuais com os dados correspondentes em um momento anterior, verificar o estado dos dados transacionais em um determinado momento e gerar ferramentas de geração de relatórios para dados passados, entre outros. (Documentação de consulta Flashback Query do Oracle).
Snowflake
O mecanismo equivalente no Snowflake para consultar dados do passado é a consulta AT | BEGIN. Observe que o único equivalente é para as instruções AS OF.
Além disso, o Snowflake tem uma documentação completa de «Time Travel» que permite consultar dados para clonar objetos, como tabelas, exibições e esquemas. Há limitações quanto aos dias de acesso aos dados passados ou excluídos (90 dias antes de passar para o status Fail-safe). Para obter mais informações, consulte a Documentação de Time Travel do Snowflake.
Sintaxe do Oracle
Sintaxe do Snowflake
Nota
Observe que a ID da consulta deve fazer referência a uma consulta executada dentro de 14 dias. Se a ID fizer referência a uma consulta com mais de 14 dias, o seguinte erro será retornado: Erro: statement <query_id> not found. Para contornar essa limitação, use o registro de data e hora da consulta referenciada. (Snowflake AT | Antes da documentação)
Amostra de padrões da origem¶
Os dados a seguir são usados nos exemplos a seguir para gerar os resultados da consulta.
Oracle¶
Snowflake¶
1. AS OF with TIMESTAMP case¶
Oracle¶
Snowflake¶
2. AS OF with SCN case¶
Oracle¶
Snowflake¶
Problemas conhecidos¶
A opção quando está usando SCN não é suportada.
A instrução VERSION não é compatível com o Snowflake.
EWIs relacionados¶
SSC-EWI-0040: Instrução incompatível.
SSC-EWI-OR0135: Atual da cláusula não é suportada no Snowflake.
SSC-FDM-0006: A coluna do tipo número pode não se comportar de forma semelhante no Snowflake.
SSC-FDM-OR0042: O tipo de data transformado em carimbo de data/hora tem um comportamento diferente.