建立已儲存的查詢

在查詢編輯器中撰寫 SQL 時,您可以儲存查詢並與他人共用。儲存的查詢是 BigQuery Studio 程式碼資產,由 Dataform 提供支援。

如要進一步瞭解如何刪除已儲存的查詢及管理已儲存的查詢記錄,請參閱「管理已儲存的查詢」一文。

所需權限

設定適當的權限,以便建立、編輯或查看已儲存的查詢。

所有具備Dataform 管理員 (roles/dataform.admin) 角色的使用者,都能以擁有者身分存取專案中建立的所有已儲存查詢。

如要進一步瞭解 BigQuery Identity and Access Management (IAM),請參閱「使用身分與存取權管理功能控管存取權」一文。

建立已儲存查詢的權限

如要建立及執行已儲存的查詢,您必須具備下列 IAM 權限:

  • dataform.locations.get
  • dataform.locations.list
  • dataform.repositories.list
  • dataform.repositories.create

您可以透過下列 IAM 角色取得這些權限:

編輯已儲存查詢的權限

如要編輯及執行已儲存的查詢,您必須具備下列 IAM 角色:

查看已儲存查詢的權限

如要查看及執行已儲存的查詢,您必須具備下列 IAM 角色:

設定程式碼資產的預設區域

如果您是第一次建立程式碼資產,請設定程式碼資產的預設區域。程式碼資產建立後,就無法變更區域。

BigQuery Studio 中的所有程式碼資產都使用相同的預設區域。如要設定程式碼資產的預設區域,請按照下列步驟操作:

  1. 前往「BigQuery」頁面

    前往 BigQuery

  2. 在「Explorer」窗格中,找出已啟用程式碼資產的專案。

  3. 按一下專案旁的 「查看動作」,然後按一下「變更預設程式碼區域」

  4. 「區域」請選取要用於程式碼資產的區域。

  5. 按一下 [選取]。

如需可用區域清單,請參閱 BigQuery Studio 位置

建立已儲存的查詢

如要建立已儲存的查詢,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「BigQuery」頁面。

    前往 BigQuery

  2. 按一下「SQL 查詢」

  3. 在查詢編輯器中輸入有效的 SQL 查詢。舉例來說,您可以查詢公開資料集

    SELECT
      name,
      SUM(number) AS total
    FROM
      `bigquery-public-data.usa_names.usa_1910_2013`
    GROUP BY
      name
    ORDER BY
      total DESC
    LIMIT
      10;
  4. 依序點按「儲存」>「儲存查詢」,或按下 Control+S

  5. 在「儲存查詢」對話方塊中,輸入已儲存查詢的名稱。

  6. 選用:如要變更這項已儲存查詢和所有其他程式碼資產日後使用的區域,請在「區域」中選取新區域。

  7. 按一下 [儲存]

    系統會建立儲存查詢的第一個版本。

  8. 選用:儲存查詢後,使用下列工具列查看查詢詳細資料或版本記錄、新增註解、回覆或取得現有註解的連結:

    查詢編輯器旁的工具列。

    「詳細資料」、「版本記錄」和「註解」工具列功能位於「預覽」中。如要提供意見回饋或尋求這些功能的支援,請傳送電子郵件至 bqui-workspace-pod@google.com

共用已儲存的查詢

如要與使用者共用已儲存的查詢,請先授予該使用者已儲存查詢的存取權,然後將他們新增至適當的 IAM 角色。然後產生已儲存查詢的連結,並與使用者共用該連結。

與您共用查詢的使用者只會看到最新版本的查詢。 系統不會在共用查詢中顯示您尚未明確儲存的自動儲存變更。

  1. 前往 Google Cloud 控制台的「BigQuery」BigQuery頁面。

    前往 BigQuery

  2. 在「Explorer」窗格中,展開專案和「Queries」資料夾,以及視需要展開「Shared queries」資料夾。找出並點選要授予存取權的已儲存查詢。

  3. 依序點按「分享」和「管理權限」

  4. 在「管理權限」窗格中,按一下「新增使用者/群組」

  5. 在「New principals」(新增主體) 欄位中輸入主體。

  6. 在「角色」清單中,選取下列其中一個角色:

  7. 選用:如要查看完整的角色清單和進階共用設定,請按一下「進階共用設定」

  8. 按一下 [儲存]

  9. 如要返回已儲存的查詢資訊,請按一下「關閉」

  10. 如要產生已儲存查詢的連結,請按一下「分享」圖示 ,然後按一下「取得連結」

    連結即會複製到剪貼簿。

將已儲存的查詢版本開啟為新查詢

如要將現有已儲存查詢的任何版本開啟為新查詢,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「BigQuery」BigQuery頁面。

    前往 BigQuery

  2. 在「Explorer」窗格中,展開專案和「Queries」資料夾,以及視需要展開「Shared queries」資料夾。選取已儲存的查詢。

  3. 按一下 「版本記錄」

  4. 按一下已儲存查詢版本旁的 「查看動作」,然後點選「以新查詢開啟」

更新已儲存的查詢

停止輸入文字兩秒後,系統會自動儲存您對已儲存查詢文字所做的變更,並在「版本記錄」中顯示為「您的變更」。自動儲存的變更不會成為查詢的新版本。您開啟查詢時,系統會重新顯示自動儲存的變更,但除非您明確將變更儲存為查詢的新版本,否則其他人都看不到這些變更。自動儲存的查詢會顯示在「預覽」中。

  1. 前往 Google Cloud 控制台的「BigQuery」BigQuery頁面。

    前往 BigQuery

  2. 在「Explorer」窗格中,展開專案和「Queries」資料夾,以及視需要展開「Shared queries」資料夾。按一下已儲存查詢的名稱即可開啟。

  3. 修改查詢。

  4. 如要儲存修改後的查詢,請依序點按 「儲存查詢」>「儲存查詢」,或按下 Ctrl+S 鍵 (在 macOS 上為 Command+S 鍵)。

    系統會建立查詢的新版本。

上傳已儲存的查詢

您可以上傳本機 SQL 查詢,在 BigQuery Studio 中做為已儲存查詢使用。上傳的已儲存查詢也會顯示在 Google Cloud 控制台的 BigQuery 頁面中。

如要上傳已儲存的查詢,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「BigQuery」BigQuery頁面。

    前往 BigQuery

  2. 在「Explorer」窗格中展開專案,然後執行下列其中一個步驟:

    • 在「查詢」旁,依序點選「查看動作」「上傳 SQL 查詢」
    • 在 Google Cloud 專案名稱旁,依序點選 「查看動作」>「上傳至專案」>「SQL 查詢」
  3. 在「Upload SQL」(上傳 SQL) 對話方塊的「SQL」欄位中,按一下「Browse」(瀏覽),然後選取要上傳的查詢。

  4. 選用:在「SQL 名稱」欄位中,編輯查詢名稱。

  5. 在「Region」(地區) 欄位中,選取要上傳已儲存查詢的地區。

  6. 按一下「上傳」。

已儲存的查詢會顯示在「Explorer」窗格

傳統版已儲存查詢

請參閱下列章節,瞭解如何建立及更新傳統已儲存的查詢。如要進一步瞭解如何共用、遷移及刪除傳統版已儲存查詢,請參閱「傳統版已儲存查詢」。

傳統版已儲存查詢的必要權限

如要建立、查看、更新及刪除傳統儲存查詢,必須要有以下 IAM 權限:

  • 不公開的傳統版已儲存查詢:
    • 建立不公開的傳統已儲存查詢不需要任何特殊權限。 您可以在任何專案中儲存不公開的查詢,但只有您可以查看、更新或刪除該查詢。
  • 專案層級的傳統版已儲存查詢:
    • 建立專案層級的傳統版已儲存查詢需要擁有 bigquery.savedqueries.create 權限。bigquery.admin 這個預先定義的角色具備 bigquery.savedqueries.create 權限。
    • 查看專案層級的傳統版已儲存查詢需要擁有 bigquery.savedqueries.getbigquery.savedqueries.list 權限。bigquery.adminbigquery.user 這些預先定義的角色具備 bigquery.savedqueries.getbigquery.savedqueries.list 權限。
    • 更新專案層級的傳統版已儲存查詢需要擁有 bigquery.savedqueries.update 權限。bigquery.admin 這個預先定義的角色具備 bigquery.savedqueries.update 權限。
    • 刪除專案層級的傳統版已儲存查詢需要擁有 bigquery.savedqueries.delete 權限。bigquery.admin 這個預先定義的角色具備 bigquery.savedqueries.delete 權限。
  • 公開的傳統版已儲存查詢:
    • 建立公開的傳統已儲存查詢不需要任何特殊權限。您可以在任何專案中儲存公開的傳統版已儲存查詢,但只有您可以更新或刪除該查詢。擁有連結的任何人都可查看公開的已儲存查詢。

如要進一步瞭解 BigQuery 中的 IAM 角色,請參閱預先定義的角色與權限一文。

建立傳統版已儲存的查詢

  1. 前往 Google Cloud 控制台的「BigQuery」頁面。

    前往 BigQuery

  2. 按一下「SQL 查詢」

  3. 在查詢編輯器中輸入有效的 SQL 查詢。舉例來說,您可以查詢公開資料集

    SELECT
      name,
      SUM(number) AS total
    FROM
      `bigquery-public-data.usa_names.usa_1910_2013`
    GROUP BY
      name
    ORDER BY
      total DESC
    LIMIT
      10;
  4. 依序點按 「儲存傳統版查詢」>「儲存傳統版查詢」

  5. 在「Save query」(儲存查詢) 對話方塊中,輸入查詢的名稱,然後將「Visibility」(瀏覽權限) 設定為下列其中一個選項:

    • 個人 (只能由您編輯):不公開的傳統共用查詢。
    • 專案 (可由具備適當權限的主體編輯),適用於專案層級的傳統版儲存查詢。
    • 公開:適用於公開的傳統版已儲存查詢。
  6. 按一下 [儲存]

共用傳統版已儲存的查詢

您可以共用已設為專案或公開瀏覽權限的傳統版已儲存查詢。專案層級瀏覽權限可讓具備必要權限的主體檢視、更新或刪除查詢。公開瀏覽權限可讓擁有查詢連結的任何人查看查詢,但無法更新或刪除查詢。

如要與其他使用者共用傳統版已儲存的查詢,請產生並分享傳統版已儲存查詢的連結。

如要執行傳統共用查詢,使用者必須能存取查詢所存取的資料。詳情請參閱「授予資料集存取權」。

如果您打算共用傳統儲存的查詢,請考慮在查詢中加入說明用途的註解。

  1. 在「Explorer」窗格中,展開專案和「(Classic) Queries」資料夾,然後找出要共用的傳統版已儲存查詢。
  2. 按一下查詢旁的「查看動作」,然後點選「取得連結」
  3. 將連結分享給要授予查詢存取權的使用者。

更新傳統版已儲存的查詢

  1. 前往 Google Cloud 控制台的「BigQuery」BigQuery頁面。

    前往 BigQuery

  2. 在「Explorer」窗格中,展開專案和「(Classic) Queries」資料夾,並視需要展開「Project queries」資料夾。

  3. 按一下已儲存的傳統查詢名稱即可開啟。

  4. 修改查詢。

  5. 如要儲存修改後的查詢,請依序點按「儲存查詢 (傳統版)」>「儲存查詢 (傳統版)」

後續步驟