MySQL で「すべての派生テーブルには独自のエイリアスが必要」というエラーが発生した場合、派生テーブルの概念を詳しく理解することが重要です。これらのテーブルはサブクエリとも呼ばれ、外部クエリ内での参照を容易にするために明示的なエイリアスが必要です。
エラーの原因となるクエリの例を見てみましょう。
SELECT ID FROM ( SELECT ID, msisdn FROM ( SELECT * FROM TT2 ) );
このクエリは 2 つのネストされたサブクエリで構成されます。最も内側のサブクエリが「TT2」テーブルからデータを取得するときに、両方のサブクエリにエイリアスがないためにエラーが発生します。
このエラーを修正するには、各サブクエリクエリには一意のエイリアスを割り当てる必要があります。修正されたクエリは次のようになります。
SELECT ID FROM ( SELECT ID, msisdn FROM ( SELECT * FROM TT2 ) AS T1 ) AS T2
ここでは、両方のサブクエリにエイリアス ('T1' と 'T2') が割り当てられ、外側のクエリがそれぞれの結果を参照できるようにします。
サブクエリが単にテーブルからデータを抽出するだけの場合、構成全体は次のようになります。
SELECT ID FROM TT2
この合理化されたクエリは、サブクエリ レイヤーを排除しながらも、望ましい結果を達成します。
以上がMySQL で派生テーブルにエイリアスが必要なのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。