建立已儲存的查詢
在查詢編輯器中撰寫 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 角色:
- BigQuery 作業使用者 (
roles/bigquery.jobUser
) - BigQuery Read Session User (
roles/bigquery.readSessionUser
) - 程式碼編輯器 (
roles/dataform.codeEditor
)
查看已儲存查詢的權限
如要查看及執行已儲存的查詢,您必須具備下列 IAM 角色:
- BigQuery 作業使用者 (
roles/bigquery.jobUser
) - BigQuery Read Session User (
roles/bigquery.readSessionUser
) - 程式碼檢視器 (
roles/dataform.codeViewer
)
設定程式碼資產的預設區域
如果您是第一次建立程式碼資產,請設定程式碼資產的預設區域。程式碼資產建立後,就無法變更區域。
BigQuery Studio 中的所有程式碼資產都使用相同的預設區域。如要設定程式碼資產的預設區域,請按照下列步驟操作:
前往「BigQuery」頁面
在「Explorer」窗格中,找出已啟用程式碼資產的專案。
按一下專案旁的
「查看動作」,然後按一下「變更預設程式碼區域」。「區域」請選取要用於程式碼資產的區域。
按一下 [選取]。
如需可用區域清單,請參閱 BigQuery Studio 位置。
建立已儲存的查詢
如要建立已儲存的查詢,請按照下列步驟操作:
前往 Google Cloud 控制台的「BigQuery」頁面。
按一下「SQL 查詢」
。在查詢編輯器中輸入有效的 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;
依序點按「儲存」
>「儲存查詢」,或按下 Control+S。
在「儲存查詢」對話方塊中,輸入已儲存查詢的名稱。
選用:如要變更這項已儲存查詢和所有其他程式碼資產日後使用的區域,請在「區域」中選取新區域。
按一下 [儲存]。
系統會建立儲存查詢的第一個版本。
選用:儲存查詢後,使用下列工具列查看查詢詳細資料或版本記錄、新增註解、回覆或取得現有註解的連結:
「詳細資料」、「版本記錄」和「註解」工具列功能位於「預覽」中。如要提供意見回饋或尋求這些功能的支援,請傳送電子郵件至 bqui-workspace-pod@google.com。
共用已儲存的查詢
如要與使用者共用已儲存的查詢,請先授予該使用者已儲存查詢的存取權,然後將他們新增至適當的 IAM 角色。然後產生已儲存查詢的連結,並與使用者共用該連結。
與您共用查詢的使用者只會看到最新版本的查詢。 系統不會在共用查詢中顯示您尚未明確儲存的自動儲存變更。
前往 Google Cloud 控制台的「BigQuery」BigQuery頁面。
在「Explorer」窗格中,展開專案和「Queries」資料夾,以及視需要展開「Shared queries」資料夾。找出並點選要授予存取權的已儲存查詢。
依序點按「分享」
和「管理權限」。在「管理權限」窗格中,按一下「新增使用者/群組」。
在「New principals」(新增主體) 欄位中輸入主體。
在「角色」清單中,選取下列其中一個角色:
選用:如要查看完整的角色清單和進階共用設定,請按一下「進階共用設定」。
按一下 [儲存]。
如要返回已儲存的查詢資訊,請按一下「關閉」。
如要產生已儲存查詢的連結,請按一下「分享」圖示
,然後按一下「取得連結」。連結即會複製到剪貼簿。
將已儲存的查詢版本開啟為新查詢
如要將現有已儲存查詢的任何版本開啟為新查詢,請按照下列步驟操作:
前往 Google Cloud 控制台的「BigQuery」BigQuery頁面。
在「Explorer」窗格中,展開專案和「Queries」資料夾,以及視需要展開「Shared queries」資料夾。選取已儲存的查詢。
按一下
「版本記錄」。按一下已儲存查詢版本旁的
「查看動作」,然後點選「以新查詢開啟」。
更新已儲存的查詢
停止輸入文字兩秒後,系統會自動儲存您對已儲存查詢文字所做的變更,並在「版本記錄」中顯示為「您的變更」。自動儲存的變更不會成為查詢的新版本。您開啟查詢時,系統會重新顯示自動儲存的變更,但除非您明確將變更儲存為查詢的新版本,否則其他人都看不到這些變更。自動儲存的查詢會顯示在「預覽」中。
前往 Google Cloud 控制台的「BigQuery」BigQuery頁面。
在「Explorer」窗格中,展開專案和「Queries」資料夾,以及視需要展開「Shared queries」資料夾。按一下已儲存查詢的名稱即可開啟。
修改查詢。
如要儲存修改後的查詢,請依序點按
「儲存查詢」>「儲存查詢」,或按下 Ctrl+S 鍵 (在 macOS 上為 Command+S 鍵)。
系統會建立查詢的新版本。
上傳已儲存的查詢
您可以上傳本機 SQL 查詢,在 BigQuery Studio 中做為已儲存查詢使用。上傳的已儲存查詢也會顯示在 Google Cloud 控制台的 BigQuery 頁面中。
如要上傳已儲存的查詢,請按照下列步驟操作:
前往 Google Cloud 控制台的「BigQuery」BigQuery頁面。
在「Explorer」窗格中展開專案,然後執行下列其中一個步驟:
- 在「查詢」旁,依序點選「查看動作」 「上傳 SQL 查詢」。
- 在 Google Cloud 專案名稱旁,依序點選 >「上傳至專案」>「SQL 查詢」。 「查看動作」
在「Upload SQL」(上傳 SQL) 對話方塊的「SQL」欄位中,按一下「Browse」(瀏覽),然後選取要上傳的查詢。
選用:在「SQL 名稱」欄位中,編輯查詢名稱。
在「Region」(地區) 欄位中,選取要上傳已儲存查詢的地區。
按一下「上傳」。
已儲存的查詢會顯示在「Explorer」窗格。
傳統版已儲存查詢
請參閱下列章節,瞭解如何建立及更新傳統已儲存的查詢。如要進一步瞭解如何共用、遷移及刪除傳統版已儲存查詢,請參閱「傳統版已儲存查詢」。
傳統版已儲存查詢的必要權限
如要建立、查看、更新及刪除傳統儲存查詢,必須要有以下 IAM 權限:
- 不公開的傳統版已儲存查詢:
- 建立不公開的傳統已儲存查詢不需要任何特殊權限。 您可以在任何專案中儲存不公開的查詢,但只有您可以查看、更新或刪除該查詢。
- 專案層級的傳統版已儲存查詢:
- 建立專案層級的傳統版已儲存查詢需要擁有
bigquery.savedqueries.create
權限。bigquery.admin
這個預先定義的角色具備bigquery.savedqueries.create
權限。 - 查看專案層級的傳統版已儲存查詢需要擁有
bigquery.savedqueries.get
與bigquery.savedqueries.list
權限。bigquery.admin
和bigquery.user
這些預先定義的角色具備bigquery.savedqueries.get
與bigquery.savedqueries.list
權限。 - 更新專案層級的傳統版已儲存查詢需要擁有
bigquery.savedqueries.update
權限。bigquery.admin
這個預先定義的角色具備bigquery.savedqueries.update
權限。 - 刪除專案層級的傳統版已儲存查詢需要擁有
bigquery.savedqueries.delete
權限。bigquery.admin
這個預先定義的角色具備bigquery.savedqueries.delete
權限。
- 建立專案層級的傳統版已儲存查詢需要擁有
- 公開的傳統版已儲存查詢:
- 建立公開的傳統已儲存查詢不需要任何特殊權限。您可以在任何專案中儲存公開的傳統版已儲存查詢,但只有您可以更新或刪除該查詢。擁有連結的任何人都可查看公開的已儲存查詢。
如要進一步瞭解 BigQuery 中的 IAM 角色,請參閱預先定義的角色與權限一文。
建立傳統版已儲存的查詢
前往 Google Cloud 控制台的「BigQuery」頁面。
按一下「SQL 查詢」
。在查詢編輯器中輸入有效的 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;
依序點按
「儲存傳統版查詢」>「儲存傳統版查詢」。
在「Save query」(儲存查詢) 對話方塊中,輸入查詢的名稱,然後將「Visibility」(瀏覽權限) 設定為下列其中一個選項:
- 個人 (只能由您編輯):不公開的傳統共用查詢。
- 專案 (可由具備適當權限的主體編輯),適用於專案層級的傳統版儲存查詢。
- 公開:適用於公開的傳統版已儲存查詢。
按一下 [儲存]。
共用傳統版已儲存的查詢
您可以共用已設為專案或公開瀏覽權限的傳統版已儲存查詢。專案層級瀏覽權限可讓具備必要權限的主體檢視、更新或刪除查詢。公開瀏覽權限可讓擁有查詢連結的任何人查看查詢,但無法更新或刪除查詢。
如要與其他使用者共用傳統版已儲存的查詢,請產生並分享傳統版已儲存查詢的連結。
如要執行傳統共用查詢,使用者必須能存取查詢所存取的資料。詳情請參閱「授予資料集存取權」。
如果您打算共用傳統儲存的查詢,請考慮在查詢中加入說明用途的註解。
- 在「Explorer」窗格中,展開專案和「(Classic) Queries」資料夾,然後找出要共用的傳統版已儲存查詢。
- 按一下查詢旁的「查看動作」 ,然後點選「取得連結」。
- 將連結分享給要授予查詢存取權的使用者。
更新傳統版已儲存的查詢
前往 Google Cloud 控制台的「BigQuery」BigQuery頁面。
在「Explorer」窗格中,展開專案和「(Classic) Queries」資料夾,並視需要展開「Project queries」資料夾。
按一下已儲存的傳統查詢名稱即可開啟。
修改查詢。
如要儲存修改後的查詢,請依序點按「儲存查詢 (傳統版)」
>「儲存查詢 (傳統版)」。
後續步驟
- 瞭解如何管理已儲存的查詢。