ここに最初に投稿してください。グループ句のケース
以下のクエリは正常に実行され、必要な数字が表示されます。問題は、クエリを実行するためにGROUP BY
句にoh.paid
カラムを持つ必要があることです。これにより、oh.unitname
ごとに2つの結果が得られます。
私は検索していくつかの関連問題を発見しましたが、解決策は私のクエリでは機能しませんでした。
正しい方向に私を向けることができるいくつかの友好的な魂がほしいと思う。
SELECT oh.unitname,
oh.CostCode,
CASE
WHEN oh.Paid = 1
THEN 'Kr '+CONVERT(VARCHAR(50), CAST(SUM(oh.paidsum * oh.ExchangeRate) AS MONEY), -1)
ELSE 'Kr '+CONVERT(VARCHAR(50), CAST(SUM(oh.totalprice * oh.ExchangeRate) AS MONEY), -1)
END AS Price
FROM dbo.OrderHead oh
WHERE oh.RowDeleted = 0
AND oh.UnitName LIKE '%%'
AND oh.DateCreated >= '2016-01-01'
AND oh.DateCreated < '2016-12-30'
AND oh.CostCode = 1
GROUP BY oh.UnitName,
oh.CostCode,
oh.Paid
ORDER BY oh.UnitName;
結果に1つまたは2つの合計が欲しいですか? – jarlh
複数の行がありますか?1つはoh.paid = 1、もう1つは/ sです.ha.paid <> 1ですか? –
こんにちは、お支払いの場合は1、支払いがない場合は0です。私は支払って支払っていない合計を得るために2つを合計したいと思います...意味があることを望みます。 – Tommel