Mit Parametern können Sie responsive, anpassbare Berichte erstellen, indem Sie Parameter aus einer Datenquelle an die zugrunde liegende SQL-Abfrage zurückgeben. Wenn Sie einen Parameter in einer benutzerdefinierten Abfrage verwenden möchten, folgen Sie den Syntaxrichtlinien unter Parametrisierte Abfragen ausführen.
Standardparameter
Sie können in jeder benutzerdefinierten Abfrage die folgenden Parameter verwenden:
Parameter |
Zweck |
|---|---|
|
Ruft den Beginn des Berichtszeitraums ab |
|
Ruft das Ende des Berichtszeitraums ab |
|
Ruft die E-Mail-Adresse des angemeldeten Nutzers ab |
So verwenden Sie diese Parameter:
- Aktivieren Sie im Bereich Parameter des Verbindungspanels die Parameter, die Sie verwenden möchten. Wenn Sie den Parameter
@DS_USER_EMAILaktivieren, werden Sie in Data Studio aufgefordert, den Zugriff auf Ihre E-Mail-Adresse zu gewähren. - Geben Sie die Parameternamen in der Abfrage in Großbuchstaben an.
In Data Studio werden alle Parameterwerte als Textstrings übergeben. Wenn Sie Parameterstrings als Kalenderdaten, Zahlen oder andere Datentypen verarbeiten möchten, verwenden Sie eine geeignete SQL-Konvertierungsfunktion wie PARSE_DATE, PARSE_TIMESTAMP oder CAST.
Mit Datumsparametern Zeiträume an die zugrunde liegende Abfrage übergeben
Wenn der Bericht eine Zeitraumsteuerung hat, können Betrachter damit unterschiedliche Start- und Enddaten direkt aus der Datenbank anfordern.
Mit dem E-Mail-Parameter den Datenzugriff auf Zeilenebene ermöglichen
Mit dem E-Mail-Parameter haben Sie die Möglichkeit, nur die Daten aufzurufen, die dem angemeldeten Nutzer eines Berichts, einer Datenquelle oder explorativen Datenanalyse zugeordnet sind. Der Nutzer muss in einem Google-Konto angemeldet sein und zustimmen, dass seine E-Mail-Adresse an Data Studio weitergegeben wird. Stimmt er nicht zu, wird in allen Diagrammen, die auf dieser Datenquelle basieren, ein Autorisierungsfehler angezeigt.
Benutzerdefinierte Parameter
Sie können alle Parameter, die Sie auf der Data Studio-Benutzeroberfläche erstellen, in Ihrer benutzerdefinierten Abfrage verwenden.
Parameter auf der Verbindungsseite erstellen
- Klicken Sie im Bereich Parameter des benutzerdefinierten Abfrageeditors auf + PARAMETER HINZUFÜGEN.
- Konfigurieren Sie die Parameteroptionen.
- Klicken Sie auf OK.
Benutzerdefinierte Parameter in der Datenquelle ausblenden
Standardmäßig können Mitbearbeiter benutzerdefinierte Parameter direkt in Berichten ändern. Wenn Sie verhindern möchten, dass Mitbearbeiter einen Wert ändern, können Sie den Parameter direkt in der Datenquellenkonfiguration ausblenden:
- Klicken Sie auf Weitere Optionen.
- Wählen Sie Ausblenden aus.
Weitere Informationen zum Zulassen von Datenquellenparametern in Berichten.
Parameter in einer benutzerdefinierten Abfrage verwenden
Ersetzen Sie im Textkörper der benutzerdefinierten SQL-Abfrage einen hartcodierten Wert durch eine Kennung, die mit dem Zeichen @ beginnt (z. B. @param_name).
Beispiele für Parameter
Im Folgenden finden Sie einige Beispiele für die Verwendung von Parametern:
Beispiel für einen benutzerdefinierten Parameter
SELECT word FROM `TABLE` WHERE corpus = @corpus;
String mit CONTAINS und einem numerischen Grenzwert
SELECT * FROM `bigquery-public-data.baseball.games_post_wide`
WHERE REGEXP_CONTAINS(gameId, @s)
AND attendance > @attendance LIMIT 100;
Stringparameter mit Mehrfachauswahl
Beachten Sie, wie UNNEST die Arrayliste der Parameterwerte mit Mehrfachauswahl vereinfacht:
SELECT * from user.users as user WHERE display_name in UNNEST(@name);
Datumsparameter mit Standardformatierung
SELECT creation_date, age, display_name from user.users as user
WHERE creation_date > PARSE_DATE('%Y%m%d', @DS_START_DATE)
AND creation_date < PARSE_DATE('%Y%m%d', @DS_END_DATE);
Datumsparameter mit Unix-Zeitstempel in Mikrosekunden
SELECT creation_date, age, display_name from user.users as use
WHERE creation_date > UNIX_MICROS(PARSE_TIMESTAMP('%Y%m%d', @DS_START_DATE))
AND creation_date < UNIX_MICROS(PARSE_TIMESTAMP('%Y%m%d', @DS_END_DATE))
Beispiel für einen E-Mail-Parameter
SELECT * FROM Sales WHERE sales-rep-email = @DS_USER_EMAIL;