建立和管理儀錶板數據集
本文說明如何使用 AI/BI 儀錶板中的數據集編輯器來建立和管理儀錶板數據集。
定義數據集
若要定義或存取現有的數據集,請按下儀錶板左上角附近的 [數據] 索引標籤。 每個儀錶板最多可以定義100個數據集。
您可以將資料集定義為:
- 針對一或多個數據表或檢視的新查詢。
- 現有的 Unity Catalog 表或視圖。
所有數據集都是由查詢所定義。 當您選擇現有的 Unity 目錄資料表或檢視時,該數據集的查詢是該資料表或檢視表上的 SELECT *
語句。 您可以修改查詢來精簡數據集。
數據集必須由可包裝在其他 SQL 中的查詢產生。 來自 DESCRIBE
或 EXPLAIN
等命令的輸出在數據集中無效。 此外,儀錶板查詢是唯讀的,因此不支援那些修改資料的語句,例如 CREATE TABLE
、INSERT
或 DELETE
。
定義數據集之後,請使用 資料集名稱右邊的 kebab 選單來存取下列選項:
重新命名: 提供數據集描述性名稱,以便您和小組快速識別您想要編輯或檢閱的查詢。
建議名稱: 根據查詢自動產生建議的名稱。 您可以在產生此名稱之後加以編輯。
複製: 建立查詢的就地複本。 您可以在複製後編輯查詢。
刪除: 刪除資料集。 如果在畫布上使用數據集,則無法使用此選項。
下載: 您可以將數據集下載為 CSV、TSV 或 Excel 檔案。
注意
畫布上目前使用的數據集會以藍色圖示以粗體文字顯示,而未使用的數據集則具有灰色圖示和非粗體名稱。
檢視結果數據表
當您建立數據集時,查詢會自動執行,而結果會顯示為編輯器下方窗格中的數據表。 每個數據列都包含一個圖示,指出其數據類型。
若要排序資料列值:
- 將滑鼠停留在每個數據行上以顯示
排序圖示。
- 按兩下圖示,以遞增或遞減順序排序值。
檢視查詢結果架構
若要檢視已定義資料集的架構,請按兩下 結果資料表右邊 架構。 [架構] 標籤頁列出已定義數據集中的所有欄位。 每個欄位都會標示為表示數據行數據類型的圖示。 如果基礎表或檢視表包含批註,它們會出現在 架構 索引標籤中。
計算量值
匯出量值提供將計算套用至現有數據集的方法,而不需修改建立數據集的 SQL。 若要深入瞭解如何建立和使用匯出量值,請參閱 什麼是導出量值?
撰寫多條語句查詢
在某些情況下,您可能想要使用多個 SQL 語句來建構數據集。 若要執行多個語句,請使用分號結束每個語句(;
)。 當您執行這些命令來建立資料集時,輸出會顯示編輯器中最後一個語句的結果。 此數據集用於畫布上的任何相關視覺效果。
語句僅限於它們所屬的數據集。 例如,如果您使用 USE
語句建立數據集來設定目錄或架構,該設定只會套用至該數據集。
例子
下列範例示範多語句查詢的常見用法。
設定目錄和架構
您可以撰寫 USE
語句來宣告查詢中數據表的目錄和架構。 下列查詢包含三個語句。 第一個會設定目錄名稱。 第二個設定了架構。
SELECT
語句只會參考數據表名稱,因為已設定目錄和架構。 請參閱 USE CATALOG。
USE CATALOG samples;
USE SCHEMA tpch;
SELECT * FROM customer;
設定 ANSI 模式
您可以設定要執行的查詢,並將 ANSI_MODE
設定為 TRUE
或 FALSE
。 針對 Databricks SQL,ANSI_MODE
的系統預設值為 TRUE
。 請參閱 ANSI_MODE。
下列查詢會將 ANSI_MODE
設定為 FALSE
,讓無效的數據類型輸入傳回 NULL
,而不是擲回錯誤。
SET ANSI_MODE = FALSE;
SELECT cast('a' AS INTEGER);
參數化複雜查詢
您可以使用多個語句來參數化通用數據表運算式或其他複雜查詢的檢視名稱。
下列查詢會建立兩個暫存檢視。
SELECT
語句會使用 IDENTIFIER
子句,將輸入字串解譯為數據表名稱。 請參閱 IDENTIFIER 子句。
CREATE TEMPORARY VIEW v1 AS SELECT 1;
CREATE TEMPORARY VIEW v2 AS SELECT 2;
SELECT * FROM IDENTIFIER(:view_name)
設定變數
下列查詢會在第一個語句中宣告變數和值。 第二個語句會變更變數的值。 第三個語句會顯示變數的結束值為 5。 如需使用暫存變數的詳細數據和完整語法,請參閱 SET VARIABLE。
DECLARE VARIABLE myvar1 INT DEFAULT 7;
SET VAR myvar1 = 5;
VALUES (myvar1);
使用 SQL 限制資料存取
儀表板使用者可以存取數據集中的所有數據,即使它未顯示在視覺化中也一樣。 若要防止敏感數據在瀏覽器中公開,請限制定義數據集的 SQL 查詢中的數據行。 例如,不要從數據表中選取所有數據行,而是只包含視覺效果所需的特定字段。