你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Get-AzStorageBlobQueryResult

对 Blob 的内容应用简单的结构化查询语言(SQL)语句,并将查询的数据子集仅保存到本地文件。

语法

NamePipeline (默认值)

Get-AzStorageBlobQueryResult
    [-Blob] <String>
    [-Container] <String>
    -QueryString <String>
    -ResultFile <String>
    [-SnapshotTime <DateTimeOffset>]
    [-VersionId <String>]
    [-InputTextConfiguration <PSBlobQueryTextConfiguration>]
    [-OutputTextConfiguration <PSBlobQueryTextConfiguration>]
    [-PassThru]
    [-Force]
    [-TagCondition <String>]
    [-Context <IStorageContext>]
    [-ServerTimeoutPerRequest <Int32>]
    [-ClientTimeoutPerRequest <Int32>]
    [-DefaultProfile <IAzureContextContainer>]
    [-ConcurrentTaskCount <Int32>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

BlobPipeline

Get-AzStorageBlobQueryResult
    -BlobBaseClient <BlobBaseClient>
    -QueryString <String>
    -ResultFile <String>
    [-InputTextConfiguration <PSBlobQueryTextConfiguration>]
    [-OutputTextConfiguration <PSBlobQueryTextConfiguration>]
    [-PassThru]
    [-Force]
    [-TagCondition <String>]
    [-Context <IStorageContext>]
    [-ServerTimeoutPerRequest <Int32>]
    [-ClientTimeoutPerRequest <Int32>]
    [-DefaultProfile <IAzureContextContainer>]
    [-ConcurrentTaskCount <Int32>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ContainerPipeline

Get-AzStorageBlobQueryResult
    [-Blob] <String>
    -BlobContainerClient <BlobContainerClient>
    -QueryString <String>
    -ResultFile <String>
    [-SnapshotTime <DateTimeOffset>]
    [-VersionId <String>]
    [-InputTextConfiguration <PSBlobQueryTextConfiguration>]
    [-OutputTextConfiguration <PSBlobQueryTextConfiguration>]
    [-PassThru]
    [-Force]
    [-TagCondition <String>]
    [-Context <IStorageContext>]
    [-ServerTimeoutPerRequest <Int32>]
    [-ClientTimeoutPerRequest <Int32>]
    [-DefaultProfile <IAzureContextContainer>]
    [-ConcurrentTaskCount <Int32>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

说明

Get-AzStorageBlobQueryResult cmdlet 对 Blob 的内容应用简单的结构化查询语言(SQL)语句,并将查询的数据子集保存到本地文件。

示例

示例 1:查询 Blob

$inputconfig = New-AzStorageBlobQueryConfig -AsCsv -HasHeader

$outputconfig = New-AzStorageBlobQueryConfig -AsJson

$queryString = "SELECT * FROM BlobStorage WHERE Name = 'a'"

$result = Get-AzStorageBlobQueryResult -Container $containerName -Blob $blobName -QueryString $queryString -ResultFile "c:\resultfile.json" -InputTextConfiguration $inputconfig -OutputTextConfiguration $outputconfig -Context $ctx

$result
BytesScanned FailureCount BlobQueryError
------------ ------------ --------------
         449            0

此命令成功查询输入配置为 csv 的 blob,并将输出配置为 json,并将输出保存到本地文件“c:\resultfile.json”。

示例 2:查询 Blob 快照

$blob = Get-AzStorageBlob -Container $containerName -Blob $blobName -SnapshotTime "2020-07-29T11:08:21.1097874Z" -Context $ctx

$inputconfig = New-AzStorageBlobQueryConfig -AsCsv -ColumnSeparator "," -QuotationCharacter """" -EscapeCharacter "\" -RecordSeparator "`n" -HasHeader

$outputconfig = New-AzStorageBlobQueryConfig -AsJson -RecordSeparator "`n"

$queryString = "SELECT * FROM BlobStorage WHERE _1 LIKE '1%%'"

$result = $blob | Get-AzStorageBlobQueryResult -QueryString $queryString -ResultFile $localFilePath -InputTextConfiguration $inputconfig -OutputTextConfiguration $outputconfig

$result

BytesScanned FailureCount BlobQueryError
------------ ------------ --------------
   187064971            1 {ParseError}



$result.BlobQueryError

Name       Description                                                   IsFatal Position
----       -----------                                                   ------- --------
ParseError Unexpected token '1' at [byte: 3077737]. Expecting token ','.    True  7270632

此命令首先获取 Blob 快照的 Blob 对象,然后查询 Blob 快照并显示结果包括查询错误。

参数

-Blob

Blob 名称

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

NamePipeline
Position:0
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False
ContainerPipeline
Position:0
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-BlobBaseClient

BlobBaseClient 对象

参数属性

类型:BlobBaseClient
默认值:None
支持通配符:False
不显示:False

参数集

BlobPipeline
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-BlobContainerClient

BlobContainerClient 对象

参数属性

类型:BlobContainerClient
默认值:None
支持通配符:False
不显示:False

参数集

ContainerPipeline
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-ClientTimeoutPerRequest

客户端每个请求的最大执行时间(以秒为单位)。

参数属性

类型:

Nullable<T>[Int32]

默认值:None
支持通配符:False
不显示:False
别名:ClientTimeoutPerRequestInSeconds

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ConcurrentTaskCount

并发异步任务的总数。 默认值为 10。

参数属性

类型:

Nullable<T>[Int32]

默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Confirm

在运行 cmdlet 之前,提示你进行确认。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False
别名:cf

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Container

容器名称

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

NamePipeline
Position:1
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Context

Azure 存储上下文对象

参数属性

类型:IStorageContext
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:True
来自管道的值(按属性名称):True
来自剩余参数的值:False

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

参数属性

类型:IAzureContextContainer
默认值:None
支持通配符:False
不显示:False
别名:AzureRmContext, AzureCredential

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Force

强制覆盖现有文件。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-InputTextConfiguration

用于处理查询输入文本的配置。 使用 New-AzStorageBlobQueryConfig 创建配置对象。

参数属性

类型:PSBlobQueryTextConfiguration
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-OutputTextConfiguration

用于处理查询输出文本的配置。 使用 New-AzStorageBlobQueryConfig 创建配置对象。

参数属性

类型:PSBlobQueryTextConfiguration
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-PassThru

返回是否成功查询指定的 Blob。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-QueryString

查询字符串,请参阅: https://learn.microsoft.com/azure/storage/blobs/query-acceleration-sql-reference

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ResultFile

用于保存查询结果的本地文件路径。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ServerTimeoutPerRequest

服务器为每个请求超时(以秒为单位)。

参数属性

类型:

Nullable<T>[Int32]

默认值:None
支持通配符:False
不显示:False
别名:ServerTimeoutPerRequestInSeconds

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-SnapshotTime

Blob SnapshotTime

参数属性

类型:

Nullable<T>[DateTimeOffset]

默认值:None
支持通配符:False
不显示:False

参数集

NamePipeline
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False
ContainerPipeline
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-TagCondition

用于检查匹配条件的可选标记表达式语句。 Blob 标记与给定表达式不匹配时,blob 请求将失败。请参阅详细信息。https://learn.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations#tags-conditional-operations

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-VersionId

Blob VersionId

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

NamePipeline
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False
ContainerPipeline
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-WhatIf

显示 cmdlet 运行时会发生什么情况。 命令脚本未运行。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False
别名:无线

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

CommonParameters

此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters

输入

BlobBaseClient

BlobContainerClient

IStorageContext

输出

Boolean