建立已儲存的查詢

在查詢編輯器中撰寫 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. 按一下專案旁的 「View actions」(查看動作),然後點選「Change my default code region」(變更預設程式碼區域)

  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. 按一下 依序點選「儲存」>「儲存查詢」,或按下 Ctrl+S 鍵 (在 macOS 上為 Command+S 鍵)。

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

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

  7. 按一下 [儲存]

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

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

    查詢編輯器旁的工具列。

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

共用已儲存的查詢

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

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

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

    前往「BigQuery」

  2. 在左側窗格中,按一下「Explorer」

    醒目顯示的「Explorer」窗格按鈕。

    如果沒有看到左側窗格,請按一下「展開左側窗格」圖示 開啟窗格。

  3. 在「Explorer」窗格中展開專案,然後點按「Queries」

  4. 找出並按一下要授予存取權的已儲存查詢。您可以使用搜尋功能或篩選器尋找查詢。

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

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

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

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

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

  10. 按一下 [儲存]

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

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

    連結即會複製到剪貼簿。

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

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

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

    前往「BigQuery」

  2. 在左側窗格中,按一下「Explorer」

    醒目顯示的「Explorer」窗格按鈕。

    如果沒有看到左側窗格,請按一下「展開左側窗格」圖示 開啟窗格。

  3. 在「Explorer」窗格中展開專案,然後點按「Queries」

  4. 選取已儲存的查詢。你可以使用搜尋功能或篩選器尋找查詢。

  5. 按一下 「版本記錄」

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

更新已儲存的查詢

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

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

    前往「BigQuery」

  2. 在左側窗格中,按一下「Explorer」

    醒目顯示的「Explorer」窗格按鈕。

  3. 在「Explorer」窗格中展開專案,然後點按「Queries」

  4. 選取已儲存的查詢。你可以使用搜尋功能或篩選器尋找查詢。

  5. 修改查詢。

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

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

上傳已儲存的查詢

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

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

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

    前往「BigQuery」

  2. 在左側窗格中,按一下「Explorer」

    醒目顯示的「Explorer」窗格按鈕。

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

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

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

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

  7. 按一下「上傳」。

您可以在「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」窗格按鈕。

    如果沒有看到左側窗格,請按一下「展開左側窗格」圖示 開啟窗格。

  2. 在「傳統版 Explorer」窗格中展開專案,按一下「(傳統版) 查詢」,然後找出要共用的傳統版已儲存查詢。

  3. 按一下查詢旁的 「查看動作」,然後點選「取得連結」

  4. 將連結分享給要授予查詢存取權的使用者。

更新傳統版已儲存的查詢

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

    前往「BigQuery」

  2. 在左側窗格中,按一下「類別」傳統版檔案總管

    醒目顯示的「傳統 Explorer」窗格按鈕。

  3. 在「傳統版 Explorer」窗格中,展開專案和「(傳統版) 查詢」資料夾,以及「專案查詢」資料夾 (如有需要)。

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

  5. 修改查詢。

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

後續步驟