已知入职时间,离职时间求在职时间。比如开始时间ENTER_date,离职事件LEFT_date.这个表名就取EMPLOREE,如果没离职时间为空。给出SQl语句,谢谢

解决方案 »

  1.   

    --这样不行嘛?
    SELECT LEFT_date-ENTER_date 在職天數 FROM EMPLOREE;
      

  2.   

    对啊 当当离职时间为null  那么我那个运算结果也是null 啊 
    因为空值进行四则运算结果仍然是空
      

  3.   


    --就这意思?
    select abs(ENTER_date-nvl(LEFT_date,0)) from EMPLOREE
      

  4.   

    select LEFT_date-ENTER_date from EMPLOREE where LEFT_date is not null
      

  5.   


    --那就这样
    select abs(ENTER_date-LEFT_date) from EMPLOREE
      

  6.   


    select abs(ENTER_date-nvl(LEFT_date,sysdate)) from EMPLOREE
      

  7.   

    用nvl做下处理就可以了啊,看来你真没接触过Oracle
    SELECT nvl(LEFT_date,sysdate)-ENTER_date 在職天數 FROM EMPLOREE;
      

  8.   

    呵呵。。这个算出来为0
    SELECT nvl(LEFT_date,sysdate)-nvl(ENTER_date,sysdate) 在職天數 FROM EMPLOREE;-----既然是离职,时间就不应该为空,我认为应该得这样,比较合理。
    SELECT LEFT_date-ENTER_date 在職天數 FROM EMPLOREE where LEFT_date is not null