查詢參數
查詢參數允許您在運行時將值替換為查詢。任何雙花括號之間的字符串{{}}
作為查詢參數處理。在設置參數值的結果窗格上方會出現一個小部件。查詢參數比查詢過濾器並且隻應該在查詢過濾器不夠用的情況下使用。
添加查詢參數
類型
Cmd+P
.參數被插入到文本插入符號和添加參數對話框出現了。關鍵字:表示查詢中的參數的關鍵字。
標題:顯示在小部件上方的標題。默認情況下,標題與關鍵字相同。
類型:支持文本、數字、日期、日期和時間、日期和時間(帶秒)、下拉列表、基於查詢的下拉列表。默認為“文本”。
輸入關鍵字,可選擇覆蓋標題,並選擇參數類型。
點擊添加參數.
在參數小部件中,設置參數值。
點擊申請更改.
點擊保存.
或者,你也可以手動輸入雙花括號{{}}
然後點擊參數小部件附近的齒輪圖標來編輯設置。
要使用不同的參數值重新運行查詢,請在小部件中輸入該值並單擊申請更改.
查詢參數類型
文本
接受字符串作為輸入。反斜杠、單引號和雙引號轉義,Databricks在此參數中添加引號。例如,一個字符串先生的李的
轉化為‘先生’s李\“年代”
使用這種方法的一個例子是
選擇*從用戶在哪裏的名字={{text_param}}
下拉列表中
要在運行查詢時限製可能參數值的範圍,可以使用下拉列表中參數類型。一個例子是選擇*從用戶在哪裏name = " {{dropdown_param}}’
.當從參數設置麵板中選擇時,將出現一個文本框,您可以在其中輸入允許的值,每個值由新行分隔。下拉列表是文本參數,因此如果您想在下拉列表中使用日期或日期和時間,您應該以數據源所需的格式輸入它們。字符串沒有轉義。您可以在單值或多值下拉列表中進行選擇。
單值:參數前後必須使用單引號。
多值:切換允許多個值選擇。在“quote”下拉菜單中,選擇參數是否使用雙引號或單引號括起來。如果選擇引號,則不需要在參數周圍添加引號。
在查詢中,更改在哪裏
子句來使用在
關鍵字。
選擇...從...在哪裏場在({{多選擇參數}})
參數多選擇小部件允許您向數據庫傳遞多個值。
基於查詢的下拉列表
接受查詢的結果作為輸入。它具有與下拉列表參數相同的行為。必須保存Databricks SQL下拉列表查詢,以便將其用作另一個查詢的輸入。
點擊基於查詢的下拉列表下類型在設置麵板。
單擊查詢字段並選擇一個查詢。如果目標查詢返回大量記錄,則性能將下降。
如果目標查詢返回多個列,Databricks SQL將使用第一個一個。如果目標查詢返回的名字
而且價值
列,Databricks SQL將參數選擇小部件填充為的名字
列,但使用關聯的對象執行查詢價值
.
例如,假設這樣的查詢:
選擇user_uuid作為“價值”,用戶名作為“名字”從用戶
返回以下數據:
價值 |
的名字 |
---|---|
1001 |
約翰。史密斯 |
1002 |
簡母鹿 |
1003 |
鮑比表 |
下拉列表小部件看起來像這樣:
當Databricks執行查詢時,傳遞給數據庫的值將是1001、1002或1003。
日期和時間
Databricks提供了許多參數化日期和時間戳值的選項,包括簡化時間範圍參數化的選項。您可以從三個不同精度的選項中選擇:
選項 |
精度 |
類型 |
---|---|---|
日期 |
一天 |
|
日期和時間 |
一分鍾 |
|
日期和時間(以秒計) |
第二個 |
|
當選擇範圍參數選項,則創建由.start
而且.end
後綴。所有選項都將參數作為字符串字麵值傳遞給查詢;Databricks要求將日期和時間值括在單引號中('
).例如:
——日期參數選擇*從usage_logs在哪裏日期='{{date_param}}'——日期和時間範圍參數選擇*從usage_logs在哪裏modified_time>{{date_range。開始}}而且modified_time<{{date_range。結束}}’
日期參數使用日曆選擇接口,默認為當前日期和時間。
請注意
的列的“日期範圍”參數僅返回正確的結果日期
類型。為時間戳
列時,使用日期和時間範圍選項之一。
在儀表板中使用查詢參數
查詢可以有選擇地利用參數或靜態值。當將基於參數化查詢的可視化添加到儀表板中時,可視化可以配置為使用:
小部件參數
小部件參數特定於儀表板中的單個可視化,出現在可視化麵板中,指定的參數值僅應用於可視化底層的查詢。
指示板參數
儀表板參數可以應用於多種可視化。在向儀表板添加基於參數化查詢的可視化時,默認情況下該參數將作為儀表板參數添加。儀表板參數是為儀表板中的一個或多個可視化配置的,並顯示在儀表板的頂部。為儀表板參數指定的參數值應用於重用該特定儀表板參數的可視化。一個儀表板可以有多個儀表板參數,每個參數可能應用於某些可視化,而不適用於其他可視化。
靜態值
使用靜態值代替響應變化的參數。靜態值允許您硬編碼一個值來代替參數,並將使參數從儀表板或小部件中“消失”。
當您添加包含參數化查詢的可視化時,您可以通過單擊適當的鉛筆圖標來選擇可視化查詢中參數的標題和來源.您也可以選擇關鍵字和默認值。看到參數屬性.
向儀表板添加可視化後,可以通過單擊垂直省略號訪問參數映射界麵在儀表板小部件的右上方,然後單擊更改小部件設置.
參數屬性
標題:顯示名稱,出現在儀表板上的值選擇器旁邊。默認為該參數關鍵字.要編輯它,請單擊鉛筆圖標.靜態儀表板參數不會顯示標題,因為值選擇器是隱藏的。如果您選擇靜態值作為你的價值來源然後標題字段顯示為灰色。
關鍵字:底層查詢中此參數的字符串字麵值。如果儀表板沒有返回預期的結果,這對於調試很有用。
默認值:沒有指定其他值時使用的值。若要從查詢屏幕更改此設置,請使用所需的參數值執行查詢並單擊保存按鈕。
價值來源:參數值的來源。點擊鉛筆圖標選擇一個來源。
新的儀表板參數:創建一個新的儀表板級參數。這允許您在儀表板上的一個位置設置參數值,並將其映射到多個可視化。
現有儀表盤參數:將參數映射到已存在的儀表盤參數。必須指定預先存在的指示板參數。
小部件參數:在儀表板小部件中顯示值選擇器。這對於小部件之間不共享的一次性參數非常有用。
靜態值:為小部件選擇一個靜態值,而不考慮其他小部件上使用的值。靜態映射的參數值不會在儀表板上的任何位置顯示值選擇器,這更緊湊。這使您可以在某些參數不需要頻繁更改時,充分利用查詢參數的靈活性,而不會使儀表板上的用戶界麵變得混亂。
常見問題(FAQ)
我可以在一個查詢中使用多個參數嗎?
是的。為每個參數使用唯一的名稱。這個例子使用了兩個參數:{{org_id}}
而且{{start_date}}
.
選擇數(0)從查詢在哪裏org_id={{org_id}}和created_at>“{{start_date}}”