整合外部資料
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
]))
| ...