Paraméterek lekérdezése

A lekérdezési paraméterrel futtatáskor értékeket helyettesíthet egy lekérdezésbe. A kettős kapcsos zárójelek {{ }} közötti sztringek lekérdezési paraméterként lesznek kezelve. Megjelenik egy widget az eredménypanel felett, ahol beállítja a paraméter értékét. A lekérdezési paraméterek rugalmasabbak a lekérdezési szűrőknél, és csak olyan esetekben használhatók, amikor a lekérdezési szűrők nem elegendőek.

Lekérdezési paraméter hozzáadása

  1. Gépelje be: Cmd + I. A paraméter be lesz szúrva a szövegrészletbe, és megjelenik a Paraméter hozzáadása párbeszédpanel.
    • Kulcsszó: A lekérdezés paraméterét képviselő kulcsszó.
    • Cím: A widget fölött megjelenő cím. Alapértelmezés szerint a cím megegyezik a kulcsszóval.
    • Típus: Támogatott típusok: Szöveg, Szám, Dátum, Dátum és idő, Dátum és idő (másodpercekkel), Legördülő lista és Lekérdezésalapú legördülő lista. Az alapértelmezett szöveg.
  2. Adja meg a kulcsszót, felülbírálhatja a címet, és kiválaszthatja a paraméter típusát.
  3. Kattintson a Paraméter hozzáadása elemre.
  4. A paraméter widgetben állítsa be a paraméter értékét.
  5. Kattintson a Módosítások alkalmazása gombra.
  6. Kattintson a Mentés gombra.

Másik lehetőségként írja be a dupla kapcsos zárójeleket {{ }} , és kattintson a paraméter widget melletti fogaskerék ikonra a beállítások szerkesztéséhez.

Ha egy másik paraméterértékkel szeretné újra futtatni a lekérdezést, írja be az értéket a widgetbe, és kattintson a Módosítások alkalmazása gombra.

Lekérdezési paraméter szerkesztése

Paraméter szerkesztéséhez kattintson a paraméter widget melletti fogaskerék ikonra. Ha meg szeretné akadályozni, hogy a lekérdezést nem birtokba vevő felhasználók módosítják a paramétert, kattintson a Csak eredmények megjelenítése gombra. Megjelenik a <Keyword> paraméter párbeszédpanel.

Lekérdezési paraméter eltávolítása

A lekérdezési paraméter eltávolításához törölje a paramétert a lekérdezésből. A paraméter widget eltűnik, és statikus értékekkel újraírhatja a lekérdezést.

Paraméterek sorrendjének módosítása

A paraméterek megjelenési sorrendjének módosításához kattintson és húzza az egyes paramétereket a kívánt helyre.

Lekérdezési paramétertípusok

Szöveg

Bemenetként egy sztringet vesz fel. A fordított perjelek, az egy- és a dupla idézőjelek feloldódnak, és az Azure Databricks idézőjeleket ad hozzá ehhez a paraméterhez. Ilyen sztring mr's Li"s'mr\'s Li\"s' például egy példa erre

SELECT * FROM users WHERE name={{ text_param }}

Szám

Bemenetként egy számot vesz fel. Erre példa lehet a

SELECT * FROM users WHERE age={{ number_param }}

A lekérdezés futtatásakor a lehetséges paraméterértékek hatókörének korlátozásához használja a legördülő lista paramétertípusát. Ilyen például a .SELECT * FROM users WHERE name='{{ dropdown_param }}' Ha a paraméterbeállítások panelen van kiválasztva, megjelenik egy szövegmező, ahol megadhatja az engedélyezett értékeket, mindegyik értéket egy új sor választja el egymástól. A legördülő listák szöveges paraméterek. Ha dátumokat vagy dátumokat és időpontokat szeretne használni a legördülő listában, adja meg őket az adatforrás által igényelt formátumban. A sztringek nem szöktek meg. Választhat egy vagy többértékű legördülő listából.

  • Egyetlen érték: A paraméter körül egyetlen idézőjelre van szükség.
  • Többértékű: A Több érték engedélyezése beállítás váltása. Az Árajánlat legördülő listában válassza ki, hogy a paramétereket a megadott módon kívánja-e hagyni (idézőjelek nélkül), vagy a paramétereket szimpla vagy dupla idézőjelekkel burkolja. Ha idézőjeleket választ, nem kell idézőjeleket hozzáadnia a paraméterhez.

Módosítsa a záradékot WHERE úgy, hogy a kulcsszót IN használja a lekérdezésben.

SELECT ...
FROM   ...
WHERE field IN ( {{ Multi Select Parameter }} )

A többkijelöléses paraméter widgettel több értéket is átadhat az adatbázisnak. Ha a Kettős idézőjel lehetőséget választja az Idézőjel paraméterhez, a lekérdezés a következő formátumot tükrözi: WHERE IN ("value1", "value2", "value3")

Lekérdezésalapú legördülő lista

A lekérdezés eredményét adja meg bemenetként. Ugyanaz a viselkedése, mint a Legördülő lista paraméternek. A Databricks SQL legördülő lista lekérdezését mentenie kell ahhoz, hogy egy másik lekérdezés bemeneteként használhassa.

  1. Kattintson a Lekérdezésalapú legördülő listára a Beállítások panel Típus területén.
  2. Kattintson a Lekérdezés mezőre, és válasszon ki egy lekérdezést. Ha a cél lekérdezés nagy számú rekordot ad vissza, a teljesítmény csökkenni fog.

Ha a cél lekérdezés egynél több oszlopot ad vissza, a Databricks SQL az elsőt használja. Ha a cél lekérdezés visszaadja és value oszlopokat name ad vissza, a Databricks SQL feltölti a paraméterválasztó widgetet az name oszlopmal, de végrehajtja a lekérdezést a társítottvalvalue.

Tegyük fel például, hogy a következő lekérdezés a táblában szereplő adatokat adja vissza.

SELECT user_uuid AS 'value', username AS 'name'
FROM users
Érték név
1001 John Smith
1002 Jane Doe
1003 Bobby Tables

Amikor az Azure Databricks futtatja a lekérdezést, az adatbázisnak átadott érték 1001, 1002 vagy 1003 lesz.

Dátum és idő

Az Azure Databricks számos lehetőséget kínál a dátum- és időbélyeg-értékek paraméterezésére, beleértve az időtartományok paraméterezésének egyszerűsítésére vonatkozó lehetőségeket is. Három különböző pontosságú lehetőség közül választhat:

Lehetőség Pontosság Típus
Dátum Nap DATE
Dátum és idő Perces TIMESTAMP
Dátum és idő (másodpercekkel) Második TIMESTAMP

Tartományparaméter-beállítás kiválasztásakor két, utótagok által .start.end kijelölt paramétert kell létrehoznia. Minden beállítás sztringkonstansként adja át a paramétereket a lekérdezésnek; Az Azure Databricks megköveteli, hogy a dátum- és időértékeket egyetlen idézőjelbe (') csomagolja. Példa:

-- Date parameter
SELECT *
FROM usage_logs
WHERE date = '{{ date_param }}'

-- Date and Time Range parameter
SELECT *
FROM usage_logs
WHERE modified_time > '{{ date_range.start }}' and modified_time < '{{ date_range.end }}'

A dátumparaméterek naptárválasztási felületet használnak, és alapértelmezés szerint az aktuális dátumot és időpontot használják.

Feljegyzés

A Dátumtartomány paraméter csak a megfelelő eredményeket adja vissza a típusoszlopokhoz DATE . Oszlopok esetén TIMESTAMP használja a Dátum és az Időtartomány lehetőséget.

Dinamikus dátum- és dátumtartomány-értékek

Amikor dátum- vagy dátumtartomány-paramétert ad hozzá a lekérdezéshez, a kijelölési widget egy kék villámgyors ikont jelenít meg. Kattintson rá az olyan dinamikus értékek megjelenítéséhez, mint a today, yesterday, this week, last weeklast monthvagy last year. Ezek az értékek dinamikusan frissülnek.

Fontos

A dinamikus dátumok és dátumtartományok nem kompatibilisek az ütemezett lekérdezésekkel.

Lekérdezési paraméterek használata az irányítópultokon

A lekérdezések paramétereket vagy statikus értékeket is használhatnak. Ha egy paraméteres lekérdezésen alapuló vizualizációt ad hozzá egy irányítópulthoz, a vizualizáció konfigurálható úgy, hogy a következőt használja:

  • Widget paraméter

    A widgetparaméterek egy irányítópult egyetlen vizualizációjára vonatkoznak, a vizualizáció panelen jelennek meg, és a megadott paraméterértékek csak a vizualizáció alapjául szolgáló lekérdezésre vonatkoznak.

  • Irányítópult paramétere

    Az irányítópult paraméterei több vizualizációra is alkalmazhatók. Ha paraméteres lekérdezésen alapuló vizualizációt ad hozzá egy irányítópulthoz, a paraméter alapértelmezés szerint irányítópult-paraméterként lesz hozzáadva. Az irányítópult paraméterei egy vagy több vizualizációhoz vannak konfigurálva az irányítópulton, és az irányítópult tetején jelennek meg. Az irányítópult-paraméterhez megadott paraméterértékek az adott irányítópult-paramétert újrahasználó vizualizációkra vonatkoznak. Az irányítópultok több paraméterrel is rendelkezhetnek, amelyek mindegyike egyes vizualizációkra vonatkozhat, másokra nem.

  • Statikus érték

    A statikus értékek olyan paraméter helyett használatosak, amely reagál a változásokra. A statikus értékek lehetővé teszik, hogy egy paraméter helyett egy értéket kódozzanak, és a paramétert "eltűnik" abból az irányítópultról vagy widgetből, ahol korábban megjelent.

Paraméteres lekérdezést tartalmazó vizualizáció hozzáadásakor a megfelelő ceruzaikonra kattintva kiválaszthatja a paraméter címét és forrását a vizualizációs lekérdezésben. Kiválaszthatja a kulcsszót és az alapértelmezett értéket is. Lásd: Paramétertulajdonságok.

Miután vizualizációt adott hozzá egy irányítópulthoz, az irányítópult jobb felső sarkában lévő függőleges három pontra kattintva, majd a Widget beállításainak módosítása elemre kattintva érheti el a paraméterleképezési felületet.

Paramétertulajdonságok

  • Cím: Az irányítópult értékválasztója mellett megjelenő megjelenítendő név. Alapértelmezés szerint a Kulcsszó paramétert használja. A szerkesztéshez kattintson a ceruza ikonra Pencil Icon. A címek nem jelennek meg a statikus irányítópult paramétereinél, mert az értékválasztó rejtett. Ha a Statikus értéket választja értékforrásként, a Cím mező kiszürkítve jelenik meg.

  • Kulcsszó: A paraméter sztringkonstansa az alapul szolgáló lekérdezésben. Ez akkor hasznos a hibakereséshez, ha az irányítópult nem a várt eredményeket adja vissza.

  • Alapértelmezett érték: A használt érték, ha nincs megadva más érték. A lekérdezés képernyőjének módosításához futtassa a lekérdezést a kívánt paraméterértékkel, és kattintson a Mentés gombra.

  • Értékforrás: A paraméter értékének forrása. Kattintson a ceruza ikonra Pencil Icon a forrás kiválasztásához.

    • Új irányítópult-paraméter: Hozzon létre egy új irányítópultszintű paramétert. Ez lehetővé teszi, hogy egy paraméterértéket egy helyen állítson be az irányítópulton, és több vizualizációra képezhesse le.
    • Meglévő irányítópult-paraméter: Paraméter leképezése meglévő irányítópult-paraméterre. Meg kell adnia, hogy melyik már meglévő irányítópult-paraméter.
    • Widget paraméter: Megjelenít egy értékválasztót az irányítópult widgetén belül. Ez olyan egyszeri paraméterek esetén hasznos, amelyeket nem osztanak meg a widgetek között.
    • Statikus érték: Válasszon statikus értéket a widgethez, függetlenül a többi widgeten használt értékektől. A statikusan leképezett paraméterértékek az irányítópulton sehol nem jelennek meg értékválasztóként, ami kompaktabb. Ez lehetővé teszi, hogy kihasználja a lekérdezési paraméterek rugalmasságát anélkül, hogy az irányítópulton zsúfolttá teszi a felhasználói felületet, ha bizonyos paraméterek várhatóan nem változnak gyakran.

    Change parameter mapping

Gyakori kérdések (GYIK)

Újra felhasználhatom ugyanazt a paramétert többször egyetlen lekérdezésben?

Igen. Használja ugyanazt az azonosítót a kapcsos zárójelekben. Ez a példa kétszer használja a paramétert {{org_id}} .

SELECT {{org_id}}, count(0)
FROM queries
WHERE org_id = {{org_id}}

Használhatok több paramétert egyetlen lekérdezésben?

Igen. Minden paraméterhez használjon egyedi nevet. Ez a példa két paramétert használ: {{org_id}} és {{start_date}}.

SELECT count(0)
FROM queries
WHERE org_id = {{org_id}} AND created_at > '{{start_date}}'