存储的查询结果

存储的查询结果是一种在服务上存储查询结果最多 24 小时的机制。 创建存储查询的同一主体标识可以在以后的查询中引用结果。

在以下情况下,存储的查询结果可能很有用:

  • 分页浏览查询结果。 初始命令会运行查询并返回记录的第一“页”。 以后的查询会引用其他“页”,无需重新运行查询。
  • 向下钻取方案。在此类方案中,初始查询的结果随后可供其他查询浏览。

对安全策略(如数据库访问和行级别安全性)的更新不会传播到存储的查询结果。 如果存在用户权限吊销的情况,请使用 .drop stored_query_results

存储的查询结果的行为类似于表,因为记录的顺序不会保留。 若要以分页的形式浏览结果,建议让查询包含独一无二的 ID 列。 如果查询返回了多个结果集,只存储第一个结果集。

注意

  • 如果列数超过 500,则会引发错误,并且不会存储结果。
  • 查询结果存储在与群集关联的存储帐户中;不在本地 SSD 存储中缓存数据。

下表列出用于管理存储的查询结果的管理命令和函数:

命令 说明
.set stored_query_result 命令 创建一个存储的查询结果,以便将查询结果在服务上存储长达 24 小时。
.show stored_query_result 命令 显示有关活动查询结果的信息。
.drop stored_query_result 命令 删除活动查询结果。
stored_query_result() 检索一个存储的查询结果。