首页 > 解决方案 > 如何在我的 SQL 中实现减日期?

问题描述

所以这是我的代码:

    SELECT EMPNO, ENAME, JOB, to_char(HIREDATE, 'Month YYYY'), SELECT 
    EXTRACT(YEAR FROM SYSDATE) - EXTRACT(YEAR FROM HIREDATE) FROM EMP;

    CASE
    WHEN DEPTNO = 10 THEN 'Accounting'
    WHEN DEPTNO = 20 THEN 'Research'
    WHEN DEPTNO = 30 THEN 'Sales'
    WHEN DEPTNO = 40 THEN 'Operations'
    END AS DEPT
    FROM EMP;

我可以在另一个命令窗口中单独使用 select extract 函数,但我似乎无法让它在这个查询中工作。在我添加日期减法部分之前查询成功。对不起,我对 SQL 很陌生。任何帮助,将不胜感激

标签: sqloracle

解决方案


看来您不需要额外的选择

SELECT EMPNO, ENAME, JOB, to_char(HIREDATE, 'Month YYYY'),  
        EXTRACT(YEAR FROM SYSDATE) - EXTRACT(YEAR FROM HIREDATE),

        CASE
        WHEN DEPTNO = 10 THEN 'Accounting'
        WHEN DEPTNO = 20 THEN 'Research'
        WHEN DEPTNO = 30 THEN 'Sales'
        WHEN DEPTNO = 40 THEN 'Operations'
        else null
        END AS DEPT
        FROM EMP;

推荐阅读