新しく作成した別名ABONOとCARGOに問題があります。結果の列名のALIASESとSQL照会はうまく動作しません "ABONO-CARGO AS AJUSTE" => Interbaseは列 "ABONO"を知らないというエラーを出します。間違って何Interbaseサブクエリで別名を正しく使用する
ABONO
不明の動的SQLエラー SQLエラーコード= -206 列?
SELECT M."MOV_CUENTA",
(SELECT SUM(MM."MOV_MONTO")
FROM "movimientos" MM
WHERE MM."MOV_TIPOMOV" = 'A' AND MM."MOV_CUENTA" = CS."ID_CUENTAMUN"
GROUP BY MM."MOV_CUENTA"
) AS ABONO,
(SELECT SUM(XM."MOV_MONTO")
FROM "movimientos" XM
WHERE XM."MOV_TIPOMOV" = 'C' AND XM."MOV_CUENTA" = CS."ID_CUENTAMUN"
GROUP BY XM."MOV_CUENTA"
) AS CARGO,
ABONO-CARGO AS AJUSTE
FROM "cuentasSaldo" CS
INNER JOIN "movimientos" M ON (CS."ID_CUENTAMUN" = M."MOV_CUENTA")
INNER JOIN "ajustes" AA ON (M."ID_AJUSTE" = AA."ID_AJUSTE")
INNER JOIN "documentos" DD ON (AA."ID_DOCUMENTO" = DD."ID_DOCUMENTO")
WHERE M."ID_AJUSTE" IN
(SELECT A."ID_AJUSTE"
FROM "ajustes" A
WHERE A."ID_DOCUMENTO" IN
(SELECT D."ID_DOCUMENTO"
FROM "documentos" D
WHERE D."ID_EMPRESA" = 1 AND D."DOC_EDITABLE" = 1
)
)
ORDER BY M."ID_AJUSTE", M."MOV_CUENTA"
実際には、クエリ自体に単純なfield1-field2を実行する必要がありますか?あなたはあなたのアプリケーションの部分でそれをやりますか?私は知っているので、それはFireBirdの場合もあります – nawfal
さて、私はC++ Builderでプログラミングしています。データソースとデータセットでTDBGrid(C++)コンポーネントを使用しています。私はデータセットに計算フィールドを追加することに困難を抱えていました。データセットの__onCalcFields__イベントは発生しませんので、私はDBにこの部分をさせ、料金と支払いとその合計を計算させることにしました。 –