Aracılığıyla paylaş


tablo-değerli fonksiyon remote_query

Şunun için geçerlidir:Evet olarak işaretlendi Databricks SQL Evet olarak işaretlendi Databricks Runtime

Önemli

Bu özellik Genel Önizleme aşamasındadır. Önizlemeler sayfasında önizleme kaydını onaylayabilirsiniz. Bkz. Azure Databricks önizlemelerini yönetme.

Uzak veritabanı altyapısında yürütülen sorgunun tablosal sonucunu döndürür.

remote_query bir bağlantıdan kimlik bilgilerini kullanarak uzak sistemlerden veri getirir. İşlev, sorgunun yanı sıra bir dizi bağlayıcı seçeneğini kabul eder.

Bu işlev adlandırılmış parametre çağırması gerektirir.

Sözdizimi

remote_query(connectionName [, connectorOptionKey => connectorOptionValue ] [...])

Arguments

  • connectionName

    Unity Kataloğu STRING referans alan zorunlu literal. Bağlantı adı yoksa Databricks CONNECTION_NOT_FOUND yükseltir.

    Aşağıdaki bağlantılar desteklenir:

    • BigQuery
    • MySQL
    • Oracle
    • PostgreSQL
    • Kızıl Kayma
    • Snowflake
    • SQL Server
    • Teradata

    Bağlantı desteklenmiyorsa CONNECTION_TYPE_NOT_SUPPORTED_FOR_REMOTE_QUERY_FUNCTION çıkartılır.

  • connectorOptionKey

    Büyük/küçük harfe duyarlı bir tanımlayıcı olan bağlayıcı seçenek anahtarı. Her bağlantı türüne karşılık gelen zorunlu seçenekler vardır (SQL veritabanlarına yönelik bağlantılar query veya table seçeneklerini gerektirir, NoSQL veritabanları ise collection seçeneğini gerektirir) ve ek isteğe bağlı yapılandırma seçenekleri vardır (örneğin, getirilmekte olan veri yığınlarının boyutunu yapılandıran MySQL, PostgreSQL, SQLServer ve diğer JDBC benzeri bağlantılara fetchSize desteği). Anahtar desteklenmiyorsa PARAMETER_NOT_SUPPORTED_FOR_REMOTE_QUERY_FUNCTION oluşturulur.

  • connectorOptionValue

    Bağlayıcı seçeneği değerini temsil eden sabit ifade .

İade

Bir tablo döndürür. Çıkış şeması, sorguya veya uzak sistemde taranan tablolara bağlıdır.

Notes

Bu işlev akış sorgularında (UNSUPPORTED_STREAMING_TABLE_VALUED_FUNCTION) kullanılamaz.

Örnekler

-- 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