2016-12-07 14 views
0
select 
tele_plan.id as value, 
tele_plan.plan_name as label, 
tele_plan.plan_cost as c, 
tele_plan.plan_details as d, 
COALESCE (tele_plan.plan_cost - sum(tele_payment_items.amount) as balance ,0) from `tele_plan_select` 
    inner join `tele_plan` on `tele_plan`.`id` = `tele_plan_select`.`teleplan_id` 
    left join `tele_payment_defs` on `tele_payment_defs`.`telereg_id` = `tele_plan_select`.`telereg_id` 
    left join `tele_payment_items` on `tele_payment_items`.`telepaymentdefs_id` = `tele_payment_defs`.`id` 
    and 
    `tele_payment_items`.`teleplan_id` = `tele_plan`.`id` 
    where `tele_plan_select`.`telereg_id` = 9 
    group by `tele_plan`.`id` 

ここでは、laravelフレームワークを使用しています。私はここでの問題はCOALESCEだと思います。私は2つの列の値を引いてバランスを見つけることを試みています。 balanceとして何も返さない場合は0に設定する必要があります。これが私のやりたいことです。ブラケットを使用したCOALESCEエラー

+0

ようこそ、スタックオーバーフロー!最初に[ツアー](http://stackoverflow.com/tour)にアクセスし、[良い質問をする方法](http://stackoverflow.com/help/how-to-ask) *エラーメッセージ**お願いします。私たちがあなたを助けてくれるのは簡単です。 –

答えて

0

これはCOALESCE使用が間違っています。それを変更する

COALESCE (tele_plan.plan_cost, 0) - COALESCE(SUM(tele_payment_items.amount), 0) as balance 
+0

はい、その作業。ありがとうございました。 –

関連する問題