報錯:不是 GROUP BY 表達式


報錯如下:

 錯誤sql

SELECT
    b.batchno,
    b.subtypeno,
    b.entity_id,
    b.package_spec,
    b.package_ratio,
    b.produce_date,
    b.validate_date,
    a.PACKLAYER,
    a.CURCODE,
    bc.product_name,
    bc.spec,
    bc.pack_unit,
    bc.authorized_no,
    p.product_no 
FROM
    B_P_CODE_MA4KL1QT221 a,
    b_p_code_rela b
    LEFT JOIN b_cndc_subtypeno c ON b.subtypeno = c.subtypeno
    LEFT JOIN b_cts_product bc ON c.cndc = bc.drug_id_code
    LEFT JOIN b_product p ON p.esc_subtypeno = c.subtypeno 
WHERE
    a.RELA_ID = b.rela_id 
    AND a.ISVALID = '1' 
    AND b.isvalid = '1' 
    AND c.isvalid = '1' 
    AND p.is_valid = '1' 
    AND bc.isvalid = '1' 
    AND a.CURCODE = 'MA4KL1QT23211026000001'
GROUP BY
    b.rela_id

可能的原因如下:

1、GROUP BY 和 ORDER BY一起使用時,ORDER BY要在GROUP BY的后面。

2、ORDER BY 的字段在GROUP BY 后面必須有

3、在select需要查詢的語句中選中的字段,必須出現在group by子句中

根據第3條,我們的sql不滿足,故刪除group by 語句,因為rela_id是主鍵,不需要根據rela_id來分組。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM