タイプAAまたはRAの場合、ローン番号ごとに調整を要約するクエリをMSAccessで作成しました。これをAccessで機能するSQLに変換するのに助けが必要です。
SELECT
RLI_ManualInterest.[Loan Account Number],
SUM(RLI_ManualInterest.[Loan Int Adjustment]) AS [SumOfLoan Int Adjustment],
RLI_ManualInterest.[GLAcct Interest]
FROM
RLI_ManualInterest
WHERE
(((RLI_ManualInterest.[Adjustment Type]) IN ("AA","RA")))
GROUP BY
RLI_ManualInterest.[Loan Account Number];
2つのフィールドを作成する必要があります。1つは調整タイプがAAまたはRAの場合はInt調整の合計を含み、[Loan Int Reaccr Adj Mtd]と呼ばれ、もう1つは調整タイプがFXの場合はInt調整の合計を含みます。 GL、またはFF。
どんな助けもいただければ幸いです
CASE WHEN
ほとんどのRDMSが論理インライン式に使用する以下の条件付き合計式について考えてみます。ただし、1つの例外は、偶然にもACE / JETSQLダイアレクトがを実行しないMSAccessCASE WHEN
です。ただし、パススルークエリを使用すると、MS Access GUIプログラムで他のネイティブSQLダイアレクトを実行して、バックエンドデータベース(SQL Server、MySQL、Postgre、DB2、Oracleなど)と対話できます。)ODBC / OLEDB接続を介して。
SELECT RLI_ManualInterest.[Loan Account Number],
SUM(CASE WHEN RLI_ManualInterest.[Adjustment Type] IN ('AA', 'RA')
THEN RLI_ManualInterest.[Loan Int Adjustment]
ELSE 0
END) AS [SumOfLoan Int Adjustment],
SUM(CASE WHEN RLI_ManualInterest.[Adjustment Type] IN ('FX', 'GL', 'FF')
THEN RLI_ManualInterest.[Loan Int Adjustment]
ELSE 0
END) AS [SumOfLoan Int Reaccr Adj Mtd]
FROM RLI_ManualInterest
GROUP BY RLI_ManualInterest.[Loan Account Number];
または、MS Accessの上記と同等の機能は、論理IIF()関数(SQL Server 2012以降で使用可能)を使用することです。これら2つのうち、他の一般的なRDMSは使用しませんIIF()
。
SELECT RLI_ManualInterest.[Loan Account Number],
SUM(IIF(RLI_ManualInterest.[Adjustment Type] IN ('AA', 'RA'),
RLI_ManualInterest.[Loan Int Adjustment],
0)) AS [SumOfLoan Int Adjustment],
SUM(IIF(RLI_ManualInterest.[Adjustment Type] IN ('FX', 'GL', 'FF'),
RLI_ManualInterest.[Loan Int Adjustment],
0)) AS [SumOfLoan Int Reaccr Adj Mtd]
FROM RLI_ManualInterest
GROUP BY RLI_ManualInterest.[Loan Account Number];
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加