Heim >Datenbank >MySQL-Tutorial >Warum benötigt MySQL Aliase für abgeleitete Tabellen?
Wenn in MySQL der Fehler „Jede abgeleitete Tabelle muss ihren eigenen Alias haben“ auftritt, Es ist wichtig, sich mit dem Konzept abgeleiteter Tabellen zu befassen. Diese Tabellen, auch Unterabfragen genannt, erfordern einen expliziten Alias, um die Referenzierung innerhalb der äußeren Abfrage zu erleichtern.
Nehmen wir die Beispielabfrage, die den Fehler verursacht:
SELECT ID FROM ( SELECT ID, msisdn FROM ( SELECT * FROM TT2 ) );
Diese Abfrage besteht aus zwei verschachtelten Unterabfragen. Während die innerste Unterabfrage Daten aus der Tabelle „TT2“ abruft, tritt der Fehler auf, weil beiden Unterabfragen ein Alias fehlt.
Um diesen Fehler zu beheben, muss jede Unterabfrage Der Abfrage muss ein eindeutiger Alias zugewiesen werden. Die korrigierte Abfrage würde wie folgt aussehen:
SELECT ID FROM ( SELECT ID, msisdn FROM ( SELECT * FROM TT2 ) AS T1 ) AS T2
Hier werden beiden Unterabfragen Aliase zugewiesen ('T1' und 'T2'), sodass die äußere Abfrage auf ihre jeweiligen Ergebnisse verweisen kann.
In Fällen, in denen die Unterabfrage lediglich Daten aus einer Tabelle extrahiert, kann dies für das gesamte Konstrukt gelten vereinfacht.
SELECT ID FROM TT2
Diese optimierte Abfrage eliminiert die Unterabfrageebene und erzielt dennoch das gewünschte Ergebnis.
Das obige ist der detaillierte Inhalt vonWarum benötigt MySQL Aliase für abgeleitete Tabellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!