-5
此查询显示6行。 有必要输出2行,这将是所有列Oracle中的优化语句
SELECT
D.RIND_S,
D.RIND_D,
D.CUIIO,
D.CAPITOL,
D.CUATM,
D.ID_MD_S,
D.ID_MD_D,
SUM(COL1_S) COL1_S,
SUM(COL1_D) COL1_D
FROM (
SELECT
CASE WHEN D.RIND IN ('1','2','3','4','5','6') THEN D.RIND END RIND_S,
CASE WHEN D.RIND NOT IN ('00','--','1','2','3','4','5','6') THEN D.RIND END RIND_D,
D.CUIIO AS CUIIO,
D.CAPITOL AS CAPITOL,
D.CUATM AS CUATM ,
CASE WHEN D.ID_MD IN (11788,11789,11790,11791,11792,11793) THEN ID_MD END AS ID_MD_S,
CASE WHEN D.ID_MD IN (11795,11796,11797,11798,11799,11800,11801,11802,11803,11804,11805,12521,12238,12240,12241,12524,12242) THEN ID_MD END AS ID_MD_D,
CASE WHEN D.RIND IN ('1','2','3','4','5','6') THEN CIS2.NVAL(D.COL1) END AS COL1_S,
CASE WHEN D.RIND NOT IN ('00','--','1','2','3','4','5','6') THEN CIS2.NVAL(D.COL1) END AS COL1_D
FROM
CIS2.VW_DATA_ALL D
WHERE
(D.PERIOADA =:pPERIOADA) AND
D.FORM IN (20) AND
D.CAPITOL IN (1010)
AND D.CUIIO IN (5698200,38985903)
) D
GROUP BY
D.RIND_S,
D.RIND_D,
D.ID_MD_S,
D.ID_MD_D,
D.CUIIO,
D.CAPITOL,
D.CUATM
ORDER BY
D.CUATM,
D.CUIIO
此查询显示6行。 有必要输出2行,这将是所有的列。
此查询显示
我需要输出。
如果你已经回答了你自己的问题,那么你可以标记答案接受(点击下面的投票按钮打勾)或者,如果你不认为这个问题将有利于其他用户,你可以删除的问题。 – MT0