ホームページ >データベース >mysql チュートリアル >MySQL で「ビューの SELECT に FROM 句のサブクエリが含まれています」エラーを解決する方法は?
「ビューの SELECT に FROM 句にサブクエリが含まれている」: 問題の解決
2 つのテーブルに基づいてビューを作成しようとすると、 Credit_orders と Credit_usage を使用すると、クエリは「ビューの SELECT に FROM にサブクエリが含まれている」ことを示すエラーを返します。条項。」このエラーは、MySQL ドキュメントがビュー SELECT ステートメントの FROM 句にサブクエリの存在を明示的に禁止しているために発生します。
この問題を解決してビューを正常に作成するには、サブクエリごとに個別のビューを作成する必要があります。これには、購入クレジットの計算と使用クレジットの計算の両方に対する中間ビューの作成が含まれます。
購入クレジットの計算には、次のクエリを使用できます。
CREATE VIEW view_purchased_credits AS SELECT client_id, SUM(number_of_credits) AS purchased FROM credit_orders GROUP BY client_id;
使用クレジットの計算の場合、次のクエリを使用できます:
CREATE VIEW view_credits_used AS SELECT client_id, SUM(credits_used) AS used FROM credit_usage GROUP BY client_id;
これらの中間ビューが作成されると、中間ビューにアクセスすることによる view_credit_status ビュー:
CREATE VIEW view_credit_status AS SELECT co.client_id, v1.purchased, v2.used FROM credit_orders AS co LEFT JOIN view_purchased_credits AS v1 ON v1.client_id = co.client_id LEFT JOIN view_credits_used AS v2 ON v2.client_id = co.client_id WHERE co.payment_status = 'Paid';
FROM 句からサブクエリを削除し、中間ビューを使用することにより、FROM 句のサブクエリに関連するエラーを引き起こすことなく、view_credit_status ビューを正常に作成できます。
以上がMySQL で「ビューの SELECT に FROM 句のサブクエリが含まれています」エラーを解決する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。