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.
In der konfigurierten Tabelle sind keine Spalten zulässig
Die Konfiguration unzulässiger Ausgabespalten ist ein Steuerelement in der Regel für AWS Clean Rooms benutzerdefinierte Analysen, mit dem Sie die Liste der Spalten (falls vorhanden) definieren können, die nicht in das Abfrageergebnis projiziert werden dürfen. Die Spalten, auf die in dieser Liste verwiesen wird, gelten als „unzulässige Ausgabespalten“. Das bedeutet, dass jeder Verweis auf eine solche Spalte durch Transformation, Aliasing oder auf andere Weise in der endgültigen SELECT-Projektion (Projektion) der Abfrage möglicherweise nicht vorhanden ist.
Die Funktion verhindert zwar, dass Spalten direkt in die Ausgabe projiziert werden, sie verhindert jedoch nicht vollständig, dass zugrunde liegende Werte indirekt durch andere Mechanismen abgeleitet werden. Diese Spalten können weiterhin in einer Projektionsklausel (z. B. in einer Unterabfrage oder einem Common Table Expression (CTE)) verwendet werden, solange in der allerletzten Projektion nicht auf sie verwiesen wird.
Die Konfiguration der unzulässigen Ausgabespalten bietet Ihnen die Flexibilität, die Kontrolle über Ihre Tabelle anzuwenden und zu kodifizieren, und zwar in Kombination mit Überprüfungen auf Analysevorlagenebene, die auf Anwendungsfällen und entsprechenden Datenschutzanforderungen basieren.
Weitere Informationen zum Einstellen dieser Konfiguration finden Sie unter. Hinzufügen einer benutzerdefinierten Analyseregel zu einer Tabelle (geführter Ablauf)
Beispiele
Die folgenden Beispiele zeigen, wie das Steuerelement „Unzulässige Ausgabespalten“ angewendet wird.
-
Mitglied A arbeitet mit Mitglied B zusammen.
-
Mitglied B ist Mitglied, das Abfragen ausführen kann.
-
Mitglied A definiert eine Tabelle mit Benutzern mit den Spalten Alter, Geschlecht, E-Mail und Name. Die Spalten Alter und Name sind unzulässige Ausgabespalten.
-
Mitglied B definiert eine Tabelle „Haustiere“ mit einem ähnlichen Satz von Spalten „Alter“, „Geschlecht“ und „Eigentümername“. Sie legen jedoch keine Einschränkungen für die Ausgabespalten fest, was bedeutet, dass alle Spalten in der Tabelle in der Abfrage frei projiziert werden können.
Wenn Mitglied B die folgende Abfrage ausführt, wird sie blockiert, da unzulässige Ausgabespalten nicht direkt projiziert werden können:
SELECT age FROM users
Wenn Mitglied B die folgende Abfrage ausführt, wird sie blockiert, da unzulässige Ausgabespalten nicht implizit über Project Star projiziert werden können:
SELECT * FROM users
Wenn Mitglied B die folgende Abfrage ausführt, wird sie blockiert, da Transformationen unzulässiger Ausgabespalten nicht projiziert werden können:
SELECT COUNT(age) FROM users
Wenn Mitglied B die folgende Abfrage ausführt, wird sie blockiert, da auf unzulässige Ausgabespalten in der endgültigen Projektion nicht mit einem Alias verwiesen werden kann:
SELECT count_age FROM (SELECT COUNT(age) AS count_age FROM users)
Wenn Mitglied B die folgende Abfrage ausführt, wird sie blockiert, da transformierte eingeschränkte Spalten in der Ausgabe projiziert werden:
SELECT CONCAT(name, email) FROM users
Wenn Mitglied B die folgende Abfrage ausführt, wird sie blockiert, da in CTE definierte unzulässige Ausgabespalten in der endgültigen Projektion nicht referenziert werden können:
WITH cte AS ( SELECT age AS age_alias FROM users ) SELECT age_alias FROM cte
Wenn Mitglied B die folgende Abfrage ausführt, wird sie blockiert, da unzulässige Ausgabespalten in der endgültigen Projektion nicht als Sortier- oder Partitionsschlüssel verwendet werden können:
SELECT LISTAGG(gender) WITHIN GROUP (ORDER BY age) OVER (PARTITION BY age) FROM users
Wenn Mitglied B die folgende Abfrage ausführt, ist sie erfolgreich, da Spalten, die Teil der unzulässigen Ausgabespalten sind, weiterhin für andere Konstrukte in der Abfrage verwendet werden können, z. B. in Join- oder Filterklauseln.
SELECT u.name, p.gender, p.age FROM users AS u JOIN pets AS p ON u.name = p.owner_name
Im gleichen Szenario kann Mitglied B auch die Namensspalte in Benutzern als Filter- oder Sortierschlüssel verwenden:
SELECT u.email, u.gender FROM users AS u WHERE u.name = 'Mike' ORDER BY u.name
Darüber hinaus können die unzulässigen Ausgabespalten von Benutzern in Zwischenprojektionen verwendet werden, z. B. in Unterabfragen und in folgenden CTEs Fällen:
WTIH cte AS ( SELECT u.gender, u.id, u.first_name FROM users AS u ) SELECT first_name FROM (SELECT cte.gender, cte.id, cte.first_name FROM cte)