一个人员表,有出生日期字段年月日(如1998-3-10),怎么得出系统时间为生日的所有信息?

解决方案 »

  1.   

    SELECT * FROM personinfo WHERE birthday=to_char(sysdate,'fmyyyy-mm-dd')
      

  2.   

    是不是这个意思?
    select * from yourTable where csrq =trunc(sysdate);
      

  3.   

    是指每年的生日?
    select * from yourTable where mod(trunc(sysdate)-csrq,1)=0
      

  4.   

    查看今天过生日的员工的方法:
    --如果birth是日期类型:
    SELECT *  FROM emp WHERE TO_CHAR(birth, 'mm-dd') = TO_CHAR(SYSDATE, 'mm-dd');--如果birth是文本格式,并且类似:yyyy-mm-dd hh24:mi:ss
    SELECT *
      FROM emp
     WHERE TO_CHAR(TO_DATE(birth, 'yyyy-mm-dd hh24:mi:ss'), 'mm-dd') =
           TO_CHAR(SYSDATE, 'mm-dd');