簡體   English   中英

MySQL錯誤代碼:1349。視圖的SELECT包含FROM子句中的子查詢

[英]MySQL Error Code: 1349. View's SELECT contains a subquery in the FROM clause

我試圖創建一個視圖,但得到以下錯誤:

View的SELECT包含FROM子句中的子查詢

我正在運行以下命令。 我似乎無法弄清楚如何用連接替換嵌套選擇。 任何幫助將非常感激!

create view student_fee_basic as
select fsbc.*, ffp.name, ffp.amount 'fee'
from
(select sbc.*, ffc.name 'fname', ffc.id 'fid'
    from (select s.admission_no, s.first_name, bc.id 'bid', bc.code, bc.name
        from (select b.id, b.name, c.code
            from batches b, courses c
            where b.name = '2014-2015'
            and b.course_id = c.id) bc
        left join students s on bc.id = s.batch_id) sbc
    left join finance_fee_categories ffc on ffc.batch_id = sbc.bid
    where ffc.name = 'Basic Monthly') fsbc
left join finance_fee_particulars ffp on ffp.finance_fee_category_id = fsbc.fid;

MySQL不支持視圖中的子查詢:

子查詢不能在視圖的FROM子句中使用。

文檔在這里

最簡單的解決方法是為每個級別使用一系列不同的視圖。

您可以重寫此查詢以刪除子查詢。 但是,如果沒有明確的連接,我發現很難提供幫助。

5.7版支持它。 因此,解決此問題的一種方法是將數據庫遷移到更新的版本

升級到mysql-8,你的問題就解決了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM