Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:
Databricks SQL
Databricks Runtime
Ważne
Ta funkcja jest dostępna w publicznej wersji testowej.
Zwraca tabelaryczny wynik zapytania wykonanego w zdalnym silniku bazy danych.
remote_query pobiera dane z systemów zdalnych przy użyciu poświadczeń z połączenia.
Funkcja akceptuje zestaw opcji łącznika, więc oprócz zapytania.
Ta funkcja wymaga wywołania nazwanego parametru.
Składnia
remote_query(connectionName [, connectorOptionKey => connectorOptionValue ] [...])
Arguments
-
Obowiązkowy
STRINGliterał odwołujący się do nazwy połączenia Unity Catalog. Jeśli nazwa połączenia nie istnieje, usługa Databricks zgłasza CONNECTION_NOT_FOUND.Obsługiwane są następujące połączenia:
- BigQuery
- MySQL
- Oracle
- PostgreSQL
- Redshift
- Snowflake
- SQL Server
- Teradata
Jeśli połączenie nie jest obsługiwane,
CONNECTION_TYPE_NOT_SUPPORTED_FOR_REMOTE_QUERY_FUNCTIONzostaje zgłoszony. connectorOptionKeyKlucz opcji łącznika, który jest identyfikatorem z uwzględnieniem wielkości liter. Każdy typ połączenia ma odpowiednie obowiązkowe opcje (połączenia z bazami danych SQL wymagają
querylubtableopcji, podczas gdy bazy danych NoSQL wymagającollectionopcji) i dodatkowe opcjonalne opcje konfiguracji (np. MySQL, PostgreSQL, SQLServer i inne połączenia podobne do JDBC obsługująfetchSize, które konfigurują rozmiar pobieranych partii). Jeśli klucz nie jest obsługiwanyPARAMETER_NOT_SUPPORTED_FOR_REMOTE_QUERY_FUNCTION, zostanie zgłoszony.connectorOptionValueWyrażenie stałe reprezentujące wartość opcji łącznika.
Zwraca
Zwraca tabelę. Schemat danych wyjściowych jest zależny od zapytania lub tabel skanowanych w systemie zdalnym.
Notatki
Tej funkcji nie można używać w zapytaniach strumieniowych (UNSUPPORTED_STREAMING_TABLE_VALUED_FUNCTION).
Przykłady
-- 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
Funkcje pokrewne
- http_request — podobne, ponieważ również korzysta z poświadczeń połączenia Unity Catalog do wysyłania żądań HTTP do określonego interfejsu API
- CREATE CONNECTION
- ALTER CONNECTION
- DROP CONNECTION