Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Verouderde notebookwidgets:
Waarschuwing
De ${param} syntaxis voor het openen van widgetwaarden is afgeschaft in Databricks Runtime 15.2 en hoger. Gebruik in plaats daarvan de syntaxis van de huidige Databricks-widgets (:param).
Op deze pagina ziet u hoe u de verouderde ${param} syntaxis gebruikt voor notebooks-widgets die worden uitgevoerd op Databricks Runtime 15.1 en hieronder. Databricks raadt u aan om te migreren naar de huidige syntaxis.
Widgetwaarden gebruiken in Databricks Runtime 15.1 en lager
In deze sectie wordt beschreven hoe u waarden voor Databricks-widgets doorgeeft aan %sql notebookcellen in Databricks Runtime 15.1 en hieronder.
- Maak widgets om tekstwaarden op te geven.
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"
Geef de widgetwaarden door met behulp van de
${param}syntaxis.SELECT * FROM ${database}.${table} WHERE col == ${filter_value} LIMIT 100
Opmerking
Als u het $ teken in een letterlijke SQL-tekenreeks wilt ontsnappen, gebruikt u \$. Als u bijvoorbeeld de tekenreeks $1,000wilt uitdrukken, gebruikt u "\$1,000". Het $ teken kan niet worden geëscaped voor SQL-identificatoren.
Migreren naar parametermarkeringen
De volgende tabel bevat veelvoorkomende gebruiksvoorbeelden voor parameters, de oorspronkelijke syntaxis van de Azure Databricks-widget (afgeschaft in Databricks Runtime 15.2 en hoger) en de equivalente syntaxis met behulp van de benoemde parametermarkeringssyntaxis (ondersteund in Databricks Runtime 15.2 en hoger).
| Gebruikssituatie voor parameters |
${param} oorspronkelijke widgetsyntaxis (afgeschaft vanaf Databricks Runtime 15.2 en hoger) |
:param syntaxis van parametermarkeringen (ondersteund vanaf Databricks Runtime 15.2 en hoger) |
|---|---|---|
| Alleen gegevens laden vóór een opgegeven datum | WHERE date_field < '${date_param}'U moet aanhalingstekens en accolades rond de datumparameter plaatsen. |
WHERE date_field < :date_param |
| Alleen gegevens laden die kleiner zijn dan een opgegeven numerieke waarde | WHERE price < ${max_price} |
WHERE price < :max_price |
| Twee tekenreeksen vergelijken | WHERE region = ${region_param} |
WHERE region = :region_param |
| De tabel opgeven die in een query wordt gebruikt | SELECT * FROM ${table_name} |
SELECT * FROM IDENTIFIER(:table)Wanneer een gebruiker deze parameter invoert, moet deze de volledige naamruimte op drie niveaus gebruiken om de tabel te identificeren. |
| Geef onafhankelijk de catalogus, het schema en de tabel op die in een query worden gebruikt | SELECT * FROM ${catalog}.${schema}.${table} |
SELECT * FROM IDENTIFIER(:catalog \|\| '.' \|\| :schema \|\| '.' \|\| :table) |
| Parameters gebruiken als sjabloon in een langere, opgemaakte tekenreeks | "(${area_code}) ${phone_number}"Parameterwaarden worden automatisch samengevoegd als een tekenreeks. |
format_string((%d) %d, :area_code, :phone_number)Zie Meerdere parameters samenvoegen voor een volledig voorbeeld. |
| Een interval maken | SELECT INTERVAL ${p} MINUTE |
SELECT CAST(:param as INTERVAL MINUTE) |
| Filteren op een lijst met mogelijke waarden | 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) |