![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
いつも大変参考にさせてもらっています。
いま添付画像のようなテーブルを結合し、その中で計算した結果を列追加して表示しています。
単純にこの方法だと端数が切り捨てられてしまうので赤字部分を合算しても
元の金額「121841」と一致しません。
そこで親フラグに「1」がたっているものにおいては端数分を含めた値にしたいと考えているのですが、どのようなクエリにすればよろしいのでしょうか。
(利率78.9%の行は「121841-(1827+23880)」で求めた値としたい)
アドバイスのほどよろしくお願いいたします。
![「SQL JOIN結果での計算と端数処理」の質問画像](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/b/542232193_56d80693df4c0/M.png)
No.1ベストアンサー
- 回答日時:
複雑な SQL は保守性が悪くなるのでオススメできませんが、
やるとしたら
select *,
_ case when B.親フラグ = 1 then
_ _ AA.金額 - AA.子の費用合計
_ else
_ _ {算出費用の計算式}
_ end
from ( -- 複問い合わせで、親以外の費用合計をあらかじめ計算。子が無ければ 0 とする
_ select A.PID, A.金額, coalesce(sum( {算出費用の計算式} ), 0) AS 子の費用合計
_ from A left join B on A.PID = B.FID and B.親フラグ = 0
_ group by A.PID, A.金額
) as AA
left join B on AA.PID = B.FID
Ogre7077さんn
回答ありがとうございます。
保守性の話はよくわかります。
ほかの人が記述したSQLを読み解かないといけない時に
よく苦労することがあります。
もし考え方ひとつでシンプルにとる方法などがあればと思ったのですが、
そのようなものがなさそうだということがわかっただけでも助かりました。
頂いたような内容とするのか、テーブル構成なども含めて再検討すべきなのか今一度よく考えてみたいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
- Excel(エクセル) エクセルのSUM関数について 4 2023/04/18 10:37
- Excel(エクセル) エクセル 自動計算 1 2023/01/30 13:28
- Excel(エクセル) エクセル 関数について質問です。 2 2022/10/03 11:14
- C言語・C++・C# C言語 3 2022/10/04 15:07
- Excel(エクセル) エクセルでIF関数中にIFERROR関数を使いたいのですが???? 5 2022/04/08 13:24
- Excel(エクセル) 【詳しい方教えて下さい】EXCEL条件に一致する値の複数抽出 9 2022/04/29 10:56
- Access(アクセス) Access クエリ 同一テーブル内 複数フィールドの同時集計のやり方について 1 2022/05/18 19:01
- 高校 有効数字計算 確定した値を含む 2 2023/01/18 06:03
- 物理学 スピン 行列表示 固有状態 測定値 1 2022/08/16 18:39
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで四捨五入ではなく、5...
-
生年月日から年齢を取得する方法
-
ファイルメーカーで時間の表示...
-
作業日報作成
-
「24日の0時」って・・・
-
パソコンで購入したデーターが...
-
VBAでエクセルシートを更新...
-
「時間」、「期日」、「日付」...
-
エクセルで最高値、最低値の日...
-
エクセルで縦書きルビの付け方
-
Excel関数 「日付を入力...
-
エクセルで在庫表を作りたい
-
Adobeのプレミアプロ(premiere ...
-
メールの最後に日付をいれますか?
-
Access 関数日付について
-
エクセルで数字から名前に変...
-
エクセル 日付入れ替え方法
-
excelで、セル内に文字が入力さ...
-
朝刊太郎について
-
Excelでヘッダに前日の日付を表...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コンピューターで2進法が採用...
-
Excel 隣のセルが空白以外の場...
-
アクセスである時点での年齢を...
-
エクセルでeのマイナス乗の計算...
-
ACCESSでの時間外計算方法
-
【ACCESS】未定義関数が発生。...
-
アクセスについて
-
エクセルで四捨五入ではなく、5...
-
ファイルメーカープロ8で生年月...
-
ファイルメーカーで小数点以下...
-
計算結果をCASE WHENで判断した...
-
エクセルでの勤続年数算出は?
-
ACCESS で深夜計算
-
整列の比較回数を表す数式でよ...
-
チェックデジットを付加したデ...
-
ACCESS 必要枚数を求める計算式...
-
平均年齢も出し方がわかりません。
-
ファイルメーカーで正方形の対...
-
ファイルメーカーPro7での経過...
-
exelでの年齢 何さい何か月何日...
おすすめ情報