#1054 - “字段列表”中的未知列“b.ID_TRANSAKSIJUAL”

时间:2016-06-01 15:13:07

标签: mysql sql subquery

这是我在MySQL中的查询。我不知道为什么这个领域未知

SELECT `a`.`NAMA_BULAN` AS `Bulan`,
    CASE WHEN `b`.`ID_TRANSAKSIJUAL` IS NULL
    THEN 0
    ELSE `b`.`ID_TRANSAKSIJUAL`
    END AS `Total_Pendapatan`
    FROM `tbl_bulan` AS `a`
        LEFT JOIN (
        SELECT MONTH(`tbl_transaksi_jual`.`TGL_TRANSAKSI`) AS `TGL_TRANSAKSI` , COUNT(`tbl_transaksi_jual`.`ID_TRANSAKSIJUAL`) AS `TOTAL_STLH_DISC`
        FROM `tbl_transaksi_jual`
        WHERE `tbl_transaksi_jual`.`ID_CABANG`=1 AND 
            YEAR(`tbl_transaksi_jual`.`TGL_TRANSAKSI`)= 2016
        GROUP BY MONTH(`tbl_transaksi_jual`.`TGL_TRANSAKSI`) 
        ) AS `b` ON `a`.ID_BULAN = `b`.`TGL_TRANSAKSI`
    ORDER BY `a`.ID_BULAN ASC

1 个答案:

答案 0 :(得分:1)

子查询@code不会返回名为b的列。它会在ID_TRANSAKSIJUAL中返回此列的计数,因此您应该在主查询中对其进行测试。

您也可以使用TOTAL_STLH_DISCIFNULL代替COALESCE表达。

CASE