次のクエリを実行しようとしています:
SELECT ifnull(sum(item_actual_qty),0) + b.item_opening_balance as closing
FROM transaction_inventory AS a
LEFT JOIN inventory_master as b
ON b.item_code = a.item_code and b.company_code = a.company_code
WHERE a.item_Code = 2222
AND a.company_code = '52889497-5b6b-403d-8f83-224e3c7759b4'
AND a.trans_type_name NOT IN ('Sales Order','Purchase Order')
AND a.trans_date < '2010-04-01' ;
transaction_inventory にレコードがない場合でも、inventory_master からレコードを選択するにはどうすればよいですか? 現在、マスターテーブルから実際のアイテムの開始残高を与える必要があるb.item_opening_balanceに null 値を与えています。
のようなサブクエリを置く
SELECT ifnull(sum(item_actual_qty),0) +
(select item_opening_balance from inventory_master where item_code = a.item_code) as closing
FROM transaction_inventory AS a
WHERE a.item_Code = 2222
AND a.company_code = '52889497-5b6b-403d-8f83-224e3c7759b4'
AND a.trans_type_name NOT IN ('Sales Order','Purchase Order')
AND a.trans_date < '2010-04-01'
inventory_master からアイテムの期首残高を返しますが、サブクエリの使用を避けています