YOUR AD GOES HERE

Wie man eine Tabelle mit SELECT IN und mehreren Ausgabespalten in SQL UPDATEt

Published 09, Mar 2026

vlogize


Description:
Erfahren Sie, wie Sie den SQL-Abfragefehler beim Aktualisieren mit mehreren Ausgabespalten durch Verwendung der `SELECT AS STRUCT`-Konstruktion in Google BigQuery beheben.
---
Dieses Video basiert auf der Frage https://stackoverflow.com/q/62441204/ gestellt von dem Nutzer 'Shirley Xu' ( https://stackoverflow.com/u/13766211/ ) sowie auf der Antwort https://stackoverflow.com/a/62441235/ bereitgestellt von dem Nutzer 'Mikhail Berlyant' ( https://stackoverflow.com/u/5221944/ ) auf der Website 'Stack Overflow'. Vielen Dank an diese großartigen Nutzer und die Stackexchange-Community für ihre Beiträge.

Besuchen Sie diese Links, um den Originalinhalt und weitere Details zu sehen, z. B. alternative Lösungen, aktuelle Entwicklungen zum Thema, Kommentare, Versionsverlauf usw. Der ursprüngliche Titel der Frage lautete beispielsweise: UPDATE table using SELECT IN with multiple output column

Außerdem steht der Inhalt (außer Musik) unter der Lizenz CC BY-SA https://meta.stackexchange.com/help/licensing
Der ursprüngliche Fragenbeitrag steht unter der Lizenz 'CC BY-SA 4.0' ( https://creativecommons.org/licenses/by-sa/4.0/ ), und der ursprüngliche Antwortbeitrag steht unter der Lizenz 'CC BY-SA 4.0' ( https://creativecommons.org/licenses/by-sa/4.0/ ).

Falls Ihnen irgendetwas auffällt oder Unstimmigkeiten bestehen, schreiben Sie mir bitte an vlogize [AT] gmail [DOT] com.
---
Behebung von SQL-Update-Fehlern mit mehreren Ausgabespalten

Die Arbeit mit SQL kann manchmal zu Fehlern führen, insbesondere wenn Sie versuchen, Daten auf eine Weise zu manipulieren, die die Syntax nicht unterstützt. Ein häufiges Problem, mit dem Entwickler bei der Arbeit mit SQL konfrontiert werden, ist die Fehlermeldung: „Subquery of type IN must have only one output column.“ Dieses Problem tritt auf, wenn Sie eine UPDATE-Operation durchführen möchten, die mehrere Spalten in der IN-Klausel Ihrer Abfrage umfasst.

Das Problem: Verständnis des SQL-Fehlers

Wenn dieser Fehler auftritt, geschieht dies typischerweise bei einer Abfrage wie dieser:

[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]

Wichtiger Hinweis:

Die IN-Klausel akzeptiert nur eine einzelne Ausgabespalte, aber hier versuchen Sie, zusammengesetzte Schlüssel (zwei Spalten) zu verwenden, was den Fehler verursacht.

Die Lösung: Verwendung von SELECT AS STRUCT

Um dieses Problem in Google BigQuery effektiv zu lösen, können Sie Ihre Unterabfrage so anpassen, dass die Syntax SELECT AS STRUCT verwendet wird. Dadurch können Sie mehrere Spalten als ein einziges strukturiertes Ergebnis behandeln. So können Sie Ihre SQL-Anweisung überarbeiten:

[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]

Erläuterung der Änderungen:

Die SELECT AS STRUCT-Klausel ermöglicht es, mehrere Spalten als einzelnes Objekt auszugeben, das dann in der IN-Klausel verwendet werden kann, ohne einen Fehler auszulösen.

Indem Sie die Struktur der Datenausgabe beibehalten, stellen Sie sicher, dass die Update-Bedingung korrekt funktioniert.

Fazit

Eine Tabelle unter Verwendung mehrerer Ausgabespalten zu aktualisieren, kann anfangs einschüchternd wirken, insbesondere wenn SQL-Fehler auftreten. Durch die Verwendung der SELECT AS STRUCT-Funktion in Google BigQuery können Sie Ihre Daten effektiv verwalten und manipulieren, ohne in die typischen Fallstricke von Unterabfragen mit mehreren Ausgabespalten zu geraten. Denken Sie stets daran, die erwarteten Ausgaben beim Arbeiten mit SQL-Befehlen zu überprüfen, und zögern Sie nicht, Ihre Syntax entsprechend anzupassen, um Fehler zu vermeiden.

Wenn Sie weitere Fragen haben oder Unterstützung bei SQL-Abfragen benötigen, zögern Sie nicht, uns zu kontaktieren – wir helfen Ihnen gerne weiter!

Releted More Videos

You May Also Like

YOUR AD GOES HERE

YOUR AD GOES HERE