MySQL の「すべての派生テーブルには独自のエイリアスが必要」エラーについて理解する
ネストされたサブクエリを含むクエリを実行する場合、MySQL 「すべての派生テーブルには独自の別名が必要です」というエラーがスローされることがあります。このエラーは、サブクエリの構造に問題があることを警告します。
このエラーを修正するには、各サブクエリ (または派生テーブル) に一意のエイリアスが必要です。このエイリアスは識別子として機能し、外側のクエリがサブクエリの結果を参照できるようにします。
たとえば、次のクエリを考えてみます。
SELECT ID FROM ( SELECT ID, msisdn FROM ( SELECT * FROM TT2 ) );
ここで、最も内側のクエリが原因でエラーが発生します。サブクエリ (TT2 から選択するもの) にはエイリアスがありません。これを解決するには、以下に示すように、このサブクエリにエイリアスを割り当てます。
SELECT ID FROM ( SELECT ID, msisdn FROM ( SELECT * FROM TT2 ) AS T ) AS T
エイリアス "T" により、外側のクエリが最も内側のサブクエリの結果を参照できるようになり、エラーが効果的に排除されます。 .
多くの場合、次のように不要なサブクエリを削除することでクエリを簡素化できます。例:
SELECT ID FROM TT2
以上がMySQL が「すべての派生テーブルには独自のエイリアスが必要です」エラーをスローするのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。