task_payments
SELECT t.id AS task_id, t.name, t.created_at
,COALESCE(SUM(tp1.amount),0) AS paid
,COALESCE(SUM(tp2.amount),0) AS paid_back
FROM tasks AS t
LEFT JOIN task_payments AS tp1 ON tp1.task_id=t.id AND tp1.type='1'
LEFT JOIN task_payments AS tp2 ON tp2.task_id=t.id AND tp2.type='0'
WHERE t.customer_id='4'
GROUP BY tp1.task_id, tp2.task_id
ORDER BY t.id ASC
こんにちは、task_paymentsには2つのタイプ(1または0)があります。タイプ0は返済されます。タイプ1が支払われます。結果として別途合計金額が欲しいです。だから私は結果が欲しい。task_id = 5 payed = 450 payed_back =10joinを使用する必要があります。フィルタリクエストがある場合は、where句でpaidおよびpaid_columsを使用します。例:およびpaid_back> 0