Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Widget buku catatan warisan:
Peringatan
${param} Sintaks untuk mengakses nilai widget tidak digunakan lagi dalam Databricks Runtime 15.2 ke atas. Gunakan sintaks widget Databricks saat ini, (:param) sebagai gantinya.
Halaman ini memperlihatkan kepada Anda cara menggunakan sintaksis warisan ${param} untuk widget notebook yang berjalan di Databricks Runtime 15.1 ke bawah. Databricks merekomendasikan Anda bermigrasi ke sintaks saat ini.
Gunakan nilai widget di Databricks Runtime 15.1 ke bawah
Bagian ini menjelaskan cara meneruskan nilai widget Databricks ke %sql sel buku catatan di Databricks Runtime 15.1 ke bawah.
- Buat widget untuk menentukan nilai teks.
Phyton
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"
Teruskan nilai widget menggunakan sintaksis
${param}.SELECT * FROM ${database}.${table} WHERE col == ${filter_value} LIMIT 100
Nota
Untuk menghindari $ karakter dalam string SQL literal, gunakan \$. Misalnya, untuk mengekspresikan string $1,000, gunakan "\$1,000". Karakter $ tidak dapat diloloskan untuk pengidentifikasi SQL.
Migrasi ke penanda parameter
Tabel berikut menunjukkan kasus penggunaan umum untuk parameter, sintaks widget Azure Databricks asli (tidak digunakan lagi dalam Databricks Runtime 15.2 ke atas), dan sintaks yang setara menggunakan sintaks penanda parameter bernama (didukung dalam Databricks Runtime 15.2 ke atas).
| Kasus penggunaan parameter |
${param} sintaks widget asli (tidak digunakan lagi pada Databricks Runtime 15.2 ke atas) |
:param sintaks penanda parameter (didukung pada Databricks Runtime 15.2 ke atas) |
|---|---|---|
| Muat hanya data sebelum tanggal yang ditentukan | WHERE date_field < '${date_param}'Anda harus menyertakan tanda kutip di sekitar parameter tanggal dan tanda kurung kurawal. |
WHERE date_field < :date_param |
| Muat hanya data yang kurang dari nilai numerik tertentu | WHERE price < ${max_price} |
WHERE price < :max_price |
| Bandingkan dua string | WHERE region = ${region_param} |
WHERE region = :region_param |
| Tentukan tabel yang digunakan dalam kueri | SELECT * FROM ${table_name} |
SELECT * FROM IDENTIFIER(:table)Saat pengguna memasukkan parameter ini, mereka harus menggunakan namespace tiga tingkat lengkap untuk mengidentifikasi tabel. |
| Tentukan katalog, skema, dan tabel yang digunakan dalam kueri secara independen | SELECT * FROM ${catalog}.${schema}.${table} |
SELECT * FROM IDENTIFIER(:catalog \|\| '.' \|\| :schema \|\| '.' \|\| :table) |
| Menggunakan parameter sebagai templat dalam string yang lebih panjang dan diformat | "(${area_code}) ${phone_number}"Nilai parameter secara otomatis digabungkan sebagai string. |
format_string((%d) %d, :area_code, :phone_number)Lihat Menggabungkan beberapa parameter untuk contoh lengkap. |
| Membuat interval | SELECT INTERVAL ${p} MINUTE |
SELECT CAST(:param as INTERVAL MINUTE) |
| Memfilter menurut daftar nilai yang mungkin | 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) |