ホームページ >データベース >mysql チュートリアル >MySQL で「ビューの SELECT には FROM 句にサブクエリが含まれています」を解決する方法は?

MySQL で「ビューの SELECT には FROM 句にサブクエリが含まれています」を解決する方法は?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-26 05:32:36263ブラウズ

How to Resolve

ビューの FROM 句のサブクエリのトラブルシューティング

MySQL ビューの SELECT ステートメントを実行すると、「ビューの SELECT には FROM 句にサブクエリが含まれています」というエラーが発生しますFROM 句内にサブクエリが含まれています。 MySQL のドキュメントに従って、これは許可されていません。

view_credit_status という名前のビューを作成するクエリでこの問題に対処するには、次の解決策を検討してください:

問題のあるサブクエリは次のとおりです:

(select credit_usage.client_id, 
        sum(credits_used) as credits_used 
 from credit_usage 
 group by credit_usage.client_id) as t0

このサブクエリ用に別のビューを作成します:

create view view_credit_usage_summary as 
select credit_usage.client_id, 
       sum(credits_used) as credits_used 
from credit_usage 
group by credit_usage.client_id

view_credit_status ビューでは、サブクエリの代わりに新しい view_credit_usage_summary ビューを参照します。

create view view_credit_status as 
(select credit_orders.client_id, 
        sum(credit_orders.number_of_credits) as purchased, 
        ifnull(view_credit_usage_summary.credits_used,0) as used 
 from credit_orders
 left outer join view_credit_usage_summary on view_credit_usage_summary.client_id = credit_orders.client_id
 where credit_orders.payment_status='Paid'
 group by credit_orders.client_id)

このアプローチにより、サブクエリが専用のビューに分離され、MySQL の制限に違反することなくその結果にアクセスできるようになります。

以上がMySQL で「ビューの SELECT には FROM 句にサブクエリが含まれています」を解決する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。