整合外部資料

已完成

externaldata 運算子會傳回資料表,其結構描述由查詢本身自行定義, 其中的資料則讀取自外部儲存體成品,例如 Azure Blob 儲存體的 blob 或 Azure Data Lake Storage 檔案。

語法

 externaldata ( ColumnName : ColumnType [, ...] )
  [ StorageConnectionString [, ...] ]
  [with ( PropertyName = PropertyValue [, ...] )]

引數

  • ColumnName、ColumnType:以引數定義資料表的架構。 語法與在 .create table 中定義資料表時所使用的語法相同。

  • StorageConnectionString :儲存體連接字串,描述保存要傳回之資料的儲存體成品。

  • PropertyName、PropertyValue 等:其他屬性,這些屬性會描述如何解譯從儲存體取出的資料,如同擷取屬性下方所列。

目前支援的屬性為:

引數

屬性 類型​ 描述
format string 資料格式 如果未指定,則會嘗試從副檔名偵測資料格式 (預設為 CSV) 。 支援任何內嵌資料格式。
ignoreFirstRecord bool 如果設定為 true,表示忽略每個檔案中的第一筆記錄。 使用標頭查詢 CSV 檔案時,這個屬性將發揮作用。
ingestionMapping string 指出如何將來源檔案的資料對應到資料表中實際資料行的字串值。 請參閱資料對應。

傳回

Externaldata 運算子會傳回指定架構的資料表,其中資料會從指定的儲存體成品(由儲存體連接字串表示)進行剖析。

注意

示範環境中無法使用此範例。

Users
| where UserID in ((externaldata (UserID:string) [
    @"https://storageaccount.blob.core.windows.net/storagecontainer/users.txt" 
      h@"?...SAS..." // Secret token needed to access the blob
    ]))
| ...