[解決済み] CASE条件とSUM()を含むSELECTクエリ
2022-03-11 02:55:09
質問
現在、以下のSQL文を使っています。私のテーブルには、"Cash" または "Check" を含む CPaymentType フィールドがあります。以下のように2つのSQLステートメントを実行することで、支払い金額を合計することができます。この場合、ユーザーは2つのSQL文を実行しても、1つのSQL文を実行しても、スピードの差に気づかないでしょう。しかし、私はこの方法が好きではなく、1つのSQL文が欲しいだけです。しかし、私はこの方法が好きではありません。このような場合、CASE条件を使ってどのように1つの文に再構築すればよいのでしょうか?後日小切手の支払いは含めないようにしたいのですが。ありがとうございました。
Select SUM(CAmount) as PaymentAmount
from TableOrderPayment
where CPaymentType='Cash' and CStatus='Active';
Select SUM(CAmount) as PaymentAmount
from TableOrderPayment
where CPaymentType='Check' and CDate<=SYSDATETIME() and CStatus='Active';
解決方法は?
Select SUM(CASE When CPayment='Cash' Then CAmount Else 0 End ) as CashPaymentAmount,
SUM(CASE When CPayment='Check' Then CAmount Else 0 End ) as CheckPaymentAmount
from TableOrderPayment
Where ( CPayment='Cash' Or CPayment='Check' ) AND CDate<=SYSDATETIME() and CStatus='Active';
関連
-
[解決済み] 列名または提供された値の数がテーブル定義と一致しない
-
[解決済み】Teradata - 計算中に数値のオーバーフローが発生しました。
-
[解決済み】一括読み込みデータ変換エラー(指定されたコードページに対して型の不一致または無効な文字)1行目4列目(年)について)
-
[解決済み] データ型 varchar の変換エラー
-
[解決済み] ORA-01735: 無効な ALTER TABLE オプション - ヒキガエル
-
[解決済み] Presto の JSON_EXTRACT で ' ' 文字を含むキーに問題がある。
-
[解決済み] PostgreSQL - json 型の等値演算子を識別できませんでした。
-
[解決済み] マルチパート識別子をバインドできなかった
-
[解決済み] MongoDBに "like "を使ってクエリを実行する方法
-
[解決済み] SQL Server の CASE ステートメントで OR がサポートされていない。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】CREATE VIEW は、バッチ内の唯一のステートメントでなければなりません。
-
[解決済み】SQLが単一グループのグループ関数でないこと
-
[解決済み] バックエンドバージョンでは、データベースのダイアグラムやテーブルのデザインはサポートされていません。
-
[解決済み】一括読み込みデータ変換エラー(指定されたコードページに対して型の不一致または無効な文字)1行目4列目(年)について)
-
[解決済み] テスト
-
[解決済み] pg_restoreです。[archiver] 入力ファイルはテキスト形式のダンプであるように見えます。psql を使用してください。
-
[解決済み] SELECT DISTINCTを指定した場合、ORDER BY項目は必ず選択リストに表示されます。
-
[解決済み] 集計を行わずに行から列へピボット移動する
-
[解決済み] ORA-01821: ISO 8601 のローカルタイム付き日付のフォーマットが認識されないエラー
-
[解決済み] 時間を時間単位や10分単位でグループ化する方法