SELECT YF || '.' || TO_NUMBER(RQ) FROM SB01X2000@CY2ORA WHERE LENGTH(RQ) < 3 ;
2007.11.26
2007.11.27
2007.11.28
2007.11.29
2007.11.31
2007.11.1
2007.11.2
2007.11.3
2007.11.5
2007.11.7
2007.11.8
2007.11.9
2007.11.10
2007.11.11
如上,然后我用
SELECT TO_DATE(sj,'YYYY.MM.DD')
FROM
(
SELECT YF || '.' || TO_NUMBER(RQ) sj
FROM SB01X2000@CY2ORA WHERE LENGTH(B.RQ) < 3
) ;
报错:date not valid for month specified
求助,是什么原因呢?~~~
2007.11.26
2007.11.27
2007.11.28
2007.11.29
2007.11.31
2007.11.1
2007.11.2
2007.11.3
2007.11.5
2007.11.7
2007.11.8
2007.11.9
2007.11.10
2007.11.11
如上,然后我用
SELECT TO_DATE(sj,'YYYY.MM.DD')
FROM
(
SELECT YF || '.' || TO_NUMBER(RQ) sj
FROM SB01X2000@CY2ORA WHERE LENGTH(B.RQ) < 3
) ;
报错:date not valid for month specified
求助,是什么原因呢?~~~
SELECT TO_DATE(sj,'YYYY.MM.DD')
FROM
(
SELECT YF || '.' || lpad(TO_NUMBER(RQ),2,0) sj
FROM SB01X2000@CY2ORA WHERE LENGTH(B.RQ) < 3
) ;
SELECT TO_DATE(sj,'YYYY.MM.DD')
FROM
(
SELECT YF || '.' || lpad(TO_NUMBER(RQ),2,0) sj
FROM SB01X2000@CY2ORA WHERE LENGTH(B.RQ) < 3
) ;
SELECT YF || '.' || TO_NUMBER(RQ) FROM SB01X2000@CY2ORA WHERE LENGTH(RQ) < 3 ;
2007.11.26
2007.11.27
2007.11.28
2007.11.29
2007.11.31
2007.11.1
2007.11.2
2007.11.3
2007.11.5
2007.11.7
2007.11.8
2007.11.9
2007.11.10
2007.11.11
--你下面写的转换没问题 是11月没有31天 只有30天
SELECT TO_DATE(sj,'YYYY.MM.DD')
FROM
(
SELECT YF || '.' || TO_NUMBER(RQ) sj
FROM SB01X2000@CY2ORA WHERE LENGTH(B.RQ) < 3 and TO_NUMBER(RQ)<=30
)