Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:
Databricks SQL
Databricks Runtime
Retorna o resultado tabular da consulta executada no mecanismo de banco de dados remoto.
remote_query Busca dados de sistemas remotos usando credenciais de uma conexão.
A função aceita um conjunto de opções de conector, além da consulta.
Esta função requer invocação de parâmetro nomeado.
Sintaxe
remote_query(connectionName [, connectorOptionKey => connectorOptionValue ] [...])
Arguments
-
Um literal obrigatório
STRINGque faz referência ao nome de conexão do Unity Catalog. Se o nome da conexão não existir, o Databricks gerará CONNECTION_NOT_FOUND.As seguintes conexões são suportadas:
- BigQuery
- MySQL
- Oracle
- PostgreSQL
- Redshift
- Snowflake
- SQL Server
- Teradata
Se a conexão não for suportada
CONNECTION_TYPE_NOT_SUPPORTED_FOR_REMOTE_QUERY_FUNCTIONé gerada. connectorOptionKeyUma chave de opção de conector que é um identificador que diferencia maiúsculas de minúsculas. Cada tipo de conexão tem opções obrigatórias correspondentes (conexões com bancos de dados SQL exigem
queryoutableopção, enquanto bancos de dados NoSQL exigemcollectionopção) e opções de configuração opcionais adicionais (por exemplo, MySQL, PostgreSQL, SQLServer e outras conexões JDBC suportamfetchSizeque configura o tamanho dos lotes que estão sendo buscados). Se uma chave não for suportada, é gerada uma exceçãoPARAMETER_NOT_SUPPORTED_FOR_REMOTE_QUERY_FUNCTION.connectorOptionValueUma expressão constante que representa o valor da opção do conector.
Devoluções
Retorna uma tabela. O esquema de saída depende da consulta ou das tabelas que estão sendo exploradas num sistema remoto.
Observações
Essa função não pode ser usada em consultas de streaming (UNSUPPORTED_STREAMING_TABLE_VALUED_FUNCTION).
Examples
-- Simple example with MySQL connection
> SELECT a, b FROM remote_query('mysql_connection', query => 'SELECT * FROM mysql_database.mysql_table WHERE sin(b) = 0.5');
a b
angle_1 30
-- Simple example with MongoDB (NoSQL) connection
> SELECT a, b FROM remote_query('mongo_connection', collection => 'collection1', pipeline => '[{''$match'': {''b'': 30}}]');
a b
angle_1 30
-- Connection name does not exist
> SELECT * FROM remote_query('non_existent_uc_connection', query => '');
Error: CONNECTION_NOT_FOUND
-- Connection type is not supported
> SELECT * FROM remote_query('google_drive_connection', query => '');
Error: CONNECTION_TYPE_NOT_SUPPORTED_FOR_REMOTE_QUERY_FUNCTION
Funções relacionadas
- http_request - Semelhante porque também usa credenciais de conexão do Unity Catalog para enviar solicitações HTTP para determinada API
- CREATE CONNECTION
- ALTER CONNECTION
- DROP CONNECTION