oracle 数据库查找前几条数据
1、select * from News where Ispublished=1 and rownum<=10 order by Publisheddate desc
这样查出来的话是先查出前10条数据再排序,不符合我们的要求。
2、select * from (select * from News where Ispublished=1 order by Publisheddate desc) where rownum<=10
这样查出来符合我们的要求,但是它的实现原理是不是把所有的数据查出来,再取出前10条数据.如果是这样的话,当这张表的数据很多的话,它的执行效率会不会很低?有没有什么更好的方法,能保证效率,又能查出前10条数据????
帮帮忙~~~~~~