儲存查詢結果

預存查詢結果 會將查詢的結果儲存在服務上最多 24 小時。 建立預存查詢的相同主體身分識別可以在稍後的查詢中參考結果。

儲存的查詢結果在下列案例很有用:

  • 逐頁查看查詢結果。 初始命令會執行查詢,並傳回記錄的第一個「分頁」。 稍後的查詢會參考其他「分頁」,而不需要重新執行查詢。
  • 向下鑽研案例,其中會使用其他查詢來探索初始查詢的結果。

匯報 至安全策略,例如數據庫存取和數據列層級安全性,不會傳播到預存的查詢結果。 如果有使用者權限撤銷,請使用 .drop stored_query_results

儲存的查詢結果行為類似於資料表,不會保留記錄的順序。 若要分頁結果,建議查詢包含 唯一標識符數據行。 如果查詢傳回多個結果集,則只會儲存第一個結果集。

注意

  • 當您有超過 500 個數據行時,就會引發錯誤,而且不會儲存結果。
  • 查詢結果會儲存在與叢集相關聯的記憶體帳戶中。 數據不會快取在本機 SSD 記憶體中。
  • 追蹤者叢集需要它自己的可寫入資料庫來儲存查詢結果。

下表列出用於管理預存查詢結果的管理命令和函式:

命令 描述
.set stored_query_result 命令 建立預存查詢結果,以將查詢的結果儲存在服務上最多 24 小時。
.show stored_query_result 命令 顯示作用中查詢結果的相關信息。
.drop stored_query_result 命令 刪除使用中的查詢結果。
stored_query_result () 擷取預存查詢結果。