以下语句是查出全年的日期以及星期:
SELECT rq,to_char(rq,'day') 
FROM   (
        SELECT trunc(SYSDATE, 'year') + ROWNUM - 1 rq
        FROM   dual
        CONNECT BY ROWNUM <= (trunc(SYSDATE, 'year') + INTERVAL '1' YEAR) - trunc(SYSDATE, 'year')
       )但是如果只运行FROM括号内的语句:
SELECT trunc(SYSDATE, 'year') + ROWNUM - 1 rq
        FROM   dual
        CONNECT BY ROWNUM <= (trunc(SYSDATE, 'year') + INTERVAL '1' YEAR) - trunc(SYSDATE, 'year')那只有100行记录,只到2006-4-10这条记录,rq,to_char(rq,'day') 不是从这个视图中查出来的吗,为什么这个视图只有100条记录,但是最上面那条却可以查出365条全年的?望高手解答

解决方案 »

  1.   

    因为括号里用了rownum了,rownum只能查询出100条
    至于为什么整个sql能出来365条记录,可能是因为嵌套表的缘故
    这个请高手解释一下
      

  2.   

    是啊,没搞懂,还有 CONNECT BY ROWNUM <= (trunc(SYSDATE, 'year') + INTERVAL '1' YEAR) - trunc(SYSDATE, 'year')
    这句话是啥意思呀
      

  3.   

    没试过这样的,一般connect by是用在层次化查询里的
      

  4.   

    单运行上面的2条sql语句没有问题呀!我测试记录数相同
    能不能?