select
pe.fk_id_produto,
pe.qt_unitaria,
er.FK_produto,
IFNULL(er.quantidade_recebida,0) AS quantidade_recebida
from tblprodutoencomendado as pe
left outer join tblencomendarecebida er on er.FK_encomenda = pe.FK_num_encomenda
where fk_id_produto IN(SELECT FK_produto FROM tblencomendarecebida WHERE fk_encomenda = 13) or fk_num_encomenda = 13
group by fk_id_produto asc;
----------------------------------------------------------------
RESULT OF THIS QUERY
FK_id_produto qt_unitaria FK_produto quantidade_recebida
------------- ----------- ---------- -------------------
13 17 NULL NULL
16 44 13 32
15 15 NULL NULL
20 10 20 10
我想要的是什么:
FK_id_produto qt_unitaria FK_produto quantidade_recebida
------------- ----------- ---------- -------------------
13 17 13 32
15 15 NULL NULL
16 44 NULL NULL
20 10 20 10
我已经尝试了几乎所有的东西......任何人都可以帮忙吗?提前谢谢
答案 0 :(得分:0)
看起来您的加入不在正确的字段
select
pe.fk_id_produto,
pe.qt_unitaria,
er.FK_produto,
IFNULL(er.FK_produto,0) AS quantidade_recebida
from tblprodutoencomendado as pe
left outer join tblencomendarecebida er on er.FK_produto = pe.fk_id_produto
group by fk_id_produto asc;