Heim >Datenbank >MySQL-Tutorial >Warum gibt MySQL den Fehler „Jede abgeleitete Tabelle muss ihren eigenen Alias ​​haben' aus?

Warum gibt MySQL den Fehler „Jede abgeleitete Tabelle muss ihren eigenen Alias ​​haben' aus?

Barbara Streisand
Barbara StreisandOriginal
2024-12-21 00:40:10657Durchsuche

Why Does MySQL Throw the

Verstehen des Fehlers „Jede abgeleitete Tabelle muss ihren eigenen Alias ​​haben“ in MySQL

Beim Ausführen einer Abfrage mit verschachtelten Unterabfragen, MySQL gibt manchmal einen Fehler aus, der besagt: „Jede abgeleitete Tabelle muss ihren eigenen Alias ​​haben.“ Dieser Fehler macht Sie auf ein Problem mit der Struktur der Unterabfragen aufmerksam.

Um diesen Fehler zu beheben, muss jede Unterabfrage (oder abgeleitete Tabelle) einen eindeutigen Alias ​​haben. Dieser Alias ​​dient als Kennung und ermöglicht der äußeren Abfrage, auf die Ergebnisse der Unterabfrage zu verweisen.

Betrachten Sie beispielsweise die folgende Abfrage:

SELECT ID FROM (
    SELECT ID, msisdn
    FROM (
        SELECT * FROM TT2
    )
);

Hier tritt der Fehler auf, weil die innerste Abfrage vorliegt Die Unterabfrage (diejenige, die aus TT2 auswählt) hat keinen Alias. Um das Problem zu beheben, weisen Sie dieser Unterabfrage einen Alias ​​zu, wie unten gezeigt:

SELECT ID FROM (
    SELECT ID, msisdn FROM (
        SELECT * FROM TT2
    ) AS T
) AS T

Der Alias ​​„T“ ermöglicht nun, dass die äußere Abfrage auf die Ergebnisse der innersten Unterabfrage verweist, wodurch der Fehler effektiv beseitigt wird .

In vielen Fällen kann die Abfrage vereinfacht werden, indem die unnötigen Unterabfragen entfernt werden, wie in diesem Beispiel:

SELECT ID FROM TT2

Das obige ist der detaillierte Inhalt vonWarum gibt MySQL den Fehler „Jede abgeleitete Tabelle muss ihren eigenen Alias ​​haben' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn