Udostępnij przez


Starsze widżety notesu: ${param}

Ostrzeżenie

Składnia ${param} dla uzyskiwania wartości widżetu została wycofana w środowisku Databricks Runtime 15.2 i wyższych. Zamiast tego użyj bieżącej składni widżetów usługi Databricks (:param).

Na tej stronie pokazano, jak używać starszej składni ${param} dla widżetów notatników uruchamianych w środowisku Databricks Runtime 15.1 i wcześniejszych. Usługa Databricks zaleca przeprowadzenie migracji do bieżącej składni.

Użyj wartości widżetów w środowisku Databricks Runtime 15.1 lub nowszym

W tej sekcji opisano sposób przekazywania wartości widżetów usługi Databricks do %sql komórek notesu w środowisku Databricks Runtime 15.1 lub nowszym.

  1. Tworzenie widżetów w celu określenia wartości tekstowych.

Python

dbutils.widgets.text("database", "")
dbutils.widgets.text("table", "")
dbutils.widgets.text("filter_value", "100")

Scala

 dbutils.widgets.text("database", "")
 dbutils.widgets.text("table", "")
 dbutils.widgets.text("filter_value", "100")

R

dbutils.widgets.text("database", "")
dbutils.widgets.text("table", "")
dbutils.widgets.text("filter_value", "100")

SQL

CREATE WIDGET TEXT database DEFAULT ""
CREATE WIDGET TEXT table DEFAULT ""
CREATE WIDGET TEXT filter_value DEFAULT "100"
  1. Przekaż wartości widżetu ${param} przy użyciu składni .

    SELECT *
    FROM ${database}.${table}
    WHERE col == ${filter_value}
    LIMIT 100
    

Uwaga / Notatka

Aby uniknąć znaku w literałach ciągu SQL, użyj $. Aby na przykład wyrazić ciąg $1,000, użyj polecenia "\$1,000". Nie można zeskapować znaku $ dla identyfikatorów SQL.

Migrowanie do znaczników parametrów

W poniższej tabeli przedstawiono typowe przypadki użycia parametrów, oryginalną składnię widżetu usługi Azure Databricks (przestarzałą w środowisku Databricks Runtime 15.2 lub nowszym) oraz równoważną składnię przy użyciu nazwanej składni znacznika parametrów (obsługiwanej w środowisku Databricks Runtime 15.2 lub nowszym).

Przypadek użycia parametru ${param} oryginalna składnia widżetu (przestarzała w środowisku Databricks Runtime 15.2 lub nowszym) :param składnia znacznika parametrów (obsługiwana w środowisku Databricks Runtime 15.2 lub nowszym)
Ładowanie tylko danych przed określoną datą WHERE date_field < '${date_param}'
Należy umieścić cudzysłowy wokół parametru daty oraz użyć nawiasów klamrowych.
WHERE date_field < :date_param
Ładowanie tylko danych mniejszych niż określona wartość liczbowa WHERE price < ${max_price} WHERE price < :max_price
Porównaj dwa ciągi WHERE region = ${region_param} WHERE region = :region_param
Określanie tabeli używanej w zapytaniu SELECT * FROM ${table_name} SELECT * FROM IDENTIFIER(:table)
Gdy użytkownik wprowadzi ten parametr, powinien użyć pełnej trójwymiarowej przestrzeni nazw, aby zidentyfikować tabelę.
Niezależnie określ wykaz, schemat i tabelę używaną w zapytaniu SELECT * FROM ${catalog}.${schema}.${table} SELECT * FROM IDENTIFIER(:catalog \|\| '.' \|\| :schema \|\| '.' \|\| :table)
Używanie parametrów jako szablonu w dłuższym, sformatowanym ciągu "(${area_code}) ${phone_number}"
Wartości parametrów są automatycznie łączone jako ciąg.
format_string((%d) %d, :area_code, :phone_number)
Aby uzyskać pełny przykład, zobacz Łączenie wielu parametrów .
Tworzenie interwału SELECT INTERVAL ${p} MINUTE SELECT CAST(:param as INTERVAL MINUTE)
Filtrowanie według listy możliwych wartości SELECT * from table WHERE value IN (${list_parameter}) SELECT * FROM samples.nyctaxi.trips WHERE array_contains(TRANSFORM(SPLIT(:list_parameter, ','), s -> TRIM(s)), dropoff_zip)