SUM関数とグループを必要とするサブクエリで計算を行うクエリを作成しようとしています。私のクエリは、 "Subqueryが1行以上を返す"というエラーを返します。基本的に私は、各注文の金額を「延期」に戻そうとしています。受注合計が支払テーブルのtotal_collected(そのorder_idの場合)の合計よりも大きい場合、支払額が支払われます。ここでは、クエリは次のとおりです。SUM()とグループを持つMysqlサブ選択
SELECT o.order_id
, o.server
, o.subtotal
, o.discount
, o.tax, o.total
, (SELECT (o.total - SUM(p.total_collected))
from orders o
join payments p
on o.order_id = p.order_id
group by p.order_id) as 'Due'
FROM orders o
join payments p
on o.order_id = p.order_id
WHERE...;
それは1列のみが含まれている必要があるので、私は選択のサブで「p.order_id」を含めることはできません。私はなぜエラーが発生しているのか理解していますが、sub_selectにorder_idごとにSUMを実行させる方法はわかりません。
は、あなたの期待出力を含めることはできますか? –
http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-a-very-simple-sql-クエリ – Strawberry