SELECT dtTran, balTIEscrow
  FROM LQS_Tran_Log TL
 WHERE TL.nbrTran = (SELECT nbrTran
                       FROM LQS_Tran_Log TL2
                      WHERE TL2.nbrLoan = ''
                        AND EXTRACT(YEAR from TL2.dtTran) = ''
                        AND EXTRACT(MONTH from TL2.dtTran) = ''
                        AND balTIEscrow IS NOT NULL
                        and rownum = 1
                      ORDER BY TL2.Dttran Desc, TL2.Nbrtran Desc)这样一个sql语句,在PL-SQL里面执行为什么会报错? 哪里有问题?谢谢!

解决方案 »

  1.   

    报什么错啊,没看出来!
    TL2.dtTran字段是日期型吗?
      

  2.   

    好像order by 附近有错误哦
      

  3.   

    and   rownum   =   1 
    ORDER   BY   TL2.Dttran   Desc,   TL2.Nbrtran   Desc这种用法没意义,起不到你想要的结果
      

  4.   

    SELECT dtTran, balTIEscrow FROM LQS_Tran_Log TL 
      WHERE TL.nbrTran = (SELECT nbrTran 
      FROM LQS_Tran_Log TL2 
      WHERE TL2.nbrLoan = '' 
      AND EXTRACT(YEAR from TL2.dtTran) = '' 
      AND EXTRACT(MONTH from TL2.dtTran) = '' 
      AND balTIEscrow IS NOT NULL 
      and rownum = 1 ) t ORDER BY Dttran Desc, Nbrtran Desc 
      

  5.   

    是没意义,但是应该不会报错
    楼上的和楼主原意不一直了SELECT dtTran, balTIEscrow FROM LQS_Tran_Log TL 
      WHERE TL.nbrTran = 
    select nbrTran from (
      (SELECT nbrTran ,rownum as rn
      FROM LQS_Tran_Log TL2 
      WHERE TL2.nbrLoan = '' 
      AND EXTRACT(YEAR from TL2.dtTran) = '' 
      AND EXTRACT(MONTH from TL2.dtTran) = '' 
      AND balTIEscrow IS NOT NULL 
      ORDER BY Dttran Desc, Nbrtran Desc
      ) 
      where rn= 1 
    )