

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
<a name="disallowed-columns"></a>

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)](add-analysis-rule.md#add-custom-analysis-rule-wizard)

**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 *Benutzer* 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)
```