1

Interbaseで次のSQLを機能させることができません:次のエラーが発生します:

1行目のエラー準備されていない動的SQLステートメントを実行しようとしました

SQL:

SELECT CASE
   WHEN kl='K' THEN (SUM(DB)-SUM(CR))
   WHEN kl='L' THEN (SUM(CR)-SUM(DB))
   END AS Saldo
FROM  Table1
GROUP BY KL

このようにTable1定義された場合:

Column name   Data type
------------  ------------
KL            varchar(1)
DB            int
CR            int

それでもSQLフィドルで動作します

以下も動作します!

SELECT CASE 
   WHEN kl='K' THEN 1
   WHEN kl='L' THEN 2
   END as Saldo
FROM  Table1
Group By KL
4

1 に答える 1

0

それを見つけた!

SELECT Sum(CASE
       WHEN kl='K' THEN db
       WHEN kl='L' THEN cr
       END )
      -Sum(CASE
       WHEN kl='K' THEN CR
       WHEN kl='L' THEN DB
       END )

 FROM  Table1
Group By KL
于 2012-10-17T07:41:35.930 に答える