我有两个表,如table1,table2,分别由C1,C2组成。
C1是varchar2类型,以01/01/1989格式存储日期。
C2属于Date类型,以24-May-2016 00:00:00格式存储数据。
我希望得到两列之间的日期差异,并计算两者之间的差异年数。请告诉我怎么做?
答案 0 :(得分:0)
试试这个:
SELECT FLOOR(MONTHS_BETWEEN(TO_DATE('24-May-2016 00:00:00','DD-MON-YYYY HH24:MI:SS'),
TO_DATE('01/01/1989','MM/DD/YYYY'))/12) FROM dual;
您需要替换字段名称和表格,如下所示:
SELECT FLOOR(MONTHS_BETWEEN(TO_DATE(t2.datefield,'DD-MON-YYYY HH24:MI:SS'),
TO_DATE(t1.datestringfield,'MM/DD/YYYY'))/12) FROM table t1 INNER JOIN t2
ON t1.id = t2.id;