Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Sie können Datensatzparameter in das benutzerdefinierte SQL eines Datensatzes im Direktabfragemodus einfügen, indem Sie in der SQL-Anweisung mit <<$parameter_name>>
darauf verweisen. Zur Laufzeit können Dashboard-Benutzer Filtersteuerungswerte eingeben, die einem Datensatzparameter zugeordnet sind. Anschließend können sie die Ergebnisse in der Dashboard-Grafik sehen, nachdem die Werte an die SQL-Abfrage weitergegeben wurden. Sie können Parameter verwenden, um grundlegende Filter auf der Grundlage von Kundeneingaben in where
-Klauseln zu erstellen. Alternativ können Sie case when
- oder if else
-Klauseln hinzufügen, um die Logik der SQL-Abfrage auf der Grundlage der Eingabe eines Parameters dynamisch zu ändern.
Angenommen, Sie möchten Ihrem benutzerdefinierten SQL eine WHERE
-Klausel hinzufügen, die Daten auf der Grundlage des Regionsnamens eines Endbenutzers filtert. In diesem Fall erstellen Sie einen einzelnen Wertparameter mit dem Namen RegionName
:
SELECT *
FROM transactions
WHERE region = <<$RegionName>>
Sie können Benutzern auch erlauben, mehrere Werte für den Parameter anzugeben:
SELECT *
FROM transactions
WHERE region in (<<$RegionNames>>)
Im folgenden komplexeren Beispiel bezieht sich ein Datensatzautor zweimal auf zwei Datensatzparameter, basierend auf den Vor- und Nachnamen eines Benutzers, die in einem Dashboard-Filtersteuerelement ausgewählt werden können:
SELECT Region, Country, OrderDate, Sales
FROM transactions
WHERE region=
(Case
WHEN <<$UserFIRSTNAME>> In
(select firstname from user where region='region1')
and <<$UserLASTNAME>> In
(select lastname from user where region='region1')
THEN 'region1'
WHEN <<$UserFIRSTNAME>> In
(select firstname from user where region='region2')
and <<$UserLASTNAME>> In
(select lastname from user where region='region2')
THEN 'region2'
ELSE 'region3'
END)
Sie können Parameter auch in SELECT
-Klauseln verwenden, um anhand von Benutzereingaben neue Spalten in einem Datensatz zu erstellen:
SELECT Region, Country, date,
(case
WHEN <<$RegionName>>='EU'
THEN sum(sales) * 0.93 --convert US dollar to euro
WHEN <<$RegionName>>='CAN'
THEN sum(sales) * 0.78 --convert US dollar to Canadian Dollar
ELSE sum(sales) -- US dollar
END
) as "Sales"
FROM transactions
WHERE region = <<$RegionName>>
Informationen zum Erstellen einer benutzerdefinierten SQL-Abfrage oder zum Bearbeiten einer vorhandenen Abfrage vor dem Hinzufügen eines Datensatzparameters finden Sie unter Verwenden von SQL zum Anpassen von Daten.
Wenn Sie benutzerdefiniertes SQL mit einem Datensatzparameter anwenden, wird <<$parameter_name>>
als Platzhalterwert verwendet. Wenn ein Benutzer einen der Parameterwerte aus einem Steuerelement auswählt, wird der Platzhalter durch die Werte QuickSight ersetzt, die der Benutzer im Dashboard auswählt.
Im folgenden Beispiel gibt der Benutzer eine neue benutzerdefinierte SQL-Abfrage ein, die Daten nach Status filtert:
select * from all_flights
where origin_state_abr = <<$State>>
Der Standardwert des Parameters wird auf die SQL-Abfrage angewendet und die Ergebnisse werden im Vorschaufenster angezeigt. Im folgenden Screenshot ist der Standardwert des State
-Parameters IL
oder Illinois. Die SQL-Abfrage filtert die Daten aus dem Dataset und gibt alle Einträge im Datensatz zurück, bei denen der Ursprungszustand IL
ist.
