通过cjsj(创建时间)取表里最新的一条记录。
先查询Temp表里的倒排数据:
select a.cjsj,a.ID from Temp a order by cjsj desc;
得到最新一条数据的创建时间为2021/9/10 11:35:14,ID为:162290
两种常见的错误写法
select a.cjsj,a.ID from Temp a where rownum = 1 order by cjsj desc;
select a.cjsj,a.ID from(select b.*,rownum rn from Temp b order by cjsj desc) a where rn =1;
这两种写法的意思其实相当于:select a.cjsj,a.ID from Temp a然后去查询到的第一条数据,正确的做法应该是先排序,再取第一条数据。
正确的写法:
select a.cjsj,a.ID from(select b.* from Temp b order by cjsj desc) a where rownum =1;