hiredate 是日期型
select emp.* from empn where hiredate = last_day(hiredate)

解决方案 »

  1.   

    或者select emp.* from emp where trunc(hiredate) = trunc(last_day(hiredate))
    trunc 截掉时分秒
      

  2.   

    select emp.* from emp, (select max(hiredate) hiredate, trunc(hiredate, 'month') mm from emp group by trunc(hiredate, 'month')) a where emp.hiredate=a.hiredate;
      

  3.   

    select emp.* from emp where to_char(hiredate,'yyyymmdd') = to_char(last_day(hiredate),'yyyymmdd')
      

  4.   

    select * from emp where to_char(hiredate,'yyyymmdd') = to_char(last_day(hiredate),'yyyymmdd')
      

  5.   

    select emp.* from emp where trunc(hiredate) =(select trunc(max(hiredate)) from emp);
      

  6.   

    每个月最后1天受雇的??有点歧义
    select * from(
    select emp.*,rank() over(partition by trunc(hiredate,'month') order by trunc(hiredate)desc) rk
    ) where rk = 1