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

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

Patricia Arquette
リリース: 2025-01-04 05:58:39
オリジナル
253 人が閲覧しました

How to Resolve

エラー: ビューの SELECT に FROM 句にサブクエリが含まれています

問題の説明:

ビューを作成しようとしましたが、「ビューの SELECT ステートメントには FROM が含まれています」というエラーが発生しました。句内のサブクエリ」。指定したクエリは次のとおりです:

create view view_credit_status as 
(select credit_orders.client_id, 
        sum(credit_orders.number_of_credits) as purchased, 
        ifnull(t1.credits_used,0) as used 
 from credit_orders
 left outer join (select * from (select credit_usage.client_id, 
                                        sum(credits_used) as credits_used 
                                 from credit_usage 
                                 group by credit_usage.client_id) as t0
                  ) as t1 on t1.client_id = credit_orders.client_id
 where credit_orders.payment_status='Paid'
 group by credit_orders.client_id)
ログイン後にコピー

原因:

MySQL ドキュメントによると、SELECT ステートメントの FROM 句にサブクエリを含めることはできません。

解決策:

解決策は、サブクエリごとにビューを作成することです。その後、ビュー view_credit_status からこれらのビューにアクセスできるようになります。

# 创建包含子查询的视图:
create view sum_credit_usage as
select client_id, sum(credits_used) as credits_used
from credit_usage 
group by client_id;

# 创建您的最终视图:
create view view_credit_status as 
(select credit_orders.client_id, 
        sum(credit_orders.number_of_credits) as purchased, 
        ifnull(sum_credit_usage.credits_used, 0) as used 
 from credit_orders
 left outer join sum_credit_usage on t1.client_id = credit_orders.client_id
 where credit_orders.payment_status='Paid'
 group by credit_orders.client_id);
ログイン後にコピー

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート