select * from tableA t1 where not exists(select * from tableA t2 where t2.xx = t1.xx and t2.b > t1.b)
select * from emp where HIREDATE<=sysdate order by HIREDATE desc 然后再看自己要取那几条数据 再 select * from emp where HIREDATE<=sysdate and rownum<n order by HIREDATE desc
备注,那个HIREDATE就是表中的b
你直接select max(b) from t 不就完了?
SELECT * FROM tablea WHERE b = (SELECT MAX(b) FROM tablea)
SELECT A, B, C FROM ( SELECT A, B, C, ROW_NUMBER() OVER (ORDER BY B DESC) AS RNUM FROM TABLEA ) WHERE RNUM = 1 /
where not exists(select * from tableA t2 where t2.xx = t1.xx and t2.b > t1.b)
然后再看自己要取那几条数据
再
select * from emp where HIREDATE<=sysdate and rownum<n order by HIREDATE desc
FROM (
SELECT A, B, C, ROW_NUMBER() OVER (ORDER BY B DESC) AS RNUM
FROM TABLEA
)
WHERE RNUM = 1
/