Oracle结合Mybatis实现取表的10条数据

小云云
Lepaskan: 2017-12-11 14:38:57
asal
2559 orang telah melayarinya

之前一直使用mysql和informix数据库,查表中前10条数据十分简单:本文主要介绍了Oracle结合Mybatis实现取表的10条数据的相关资料,需要的朋友可以参考下,希望能帮助到大家。

最原始版本:

select top * from student
Salin selepas log masuk


当然,我们还可以写的复杂一点,比如外加一些查询条件?

比如查询前10条成绩大于80分的学生信息

添加了where查询条件的版本:

select top * from table where score > 80
Salin selepas log masuk

但是!!oracle中没有top啊!!!!那么该如何实现呢?

嗯,可以用rownum!

oracle中原始版本

select * from student where rownum < 10
Salin selepas log masuk

上面这个好像也没有复杂的地方。。但是问题来了,如果我们还希望加上分数大于80呢?

对于我这个oracle初学者来说,真的是费力。在这里就直接贴出来了,希望可以让一些人少费一些力!

oracle添加了where查询条件的版本

select * from( select rownum rn,A.* from student where score > 80) where rn < 10
Salin selepas log masuk

简单分析一下上面的代码。实际上是先通过内嵌的sql语句查询出分数大于80的数据,再选择内嵌sql查询结果中的前10条数据

最后附上mybatis代码?

Salin selepas log masuk

上面的scores和number均为变量

ps:mybatis取Oracle序列,值相同问题处理

Salin selepas log masuk

上述mybatis代码在调用是总是获取到同一个序列的值,查询相关资料得知是mybatis的缓存问题:

加上useCache="false" flushCache="false"属性即可:

Salin selepas log masuk

相关推荐:

Oracle如何更改表空间的数据文件位置

如何修改Oracle数据库表中字段顺序

oracle 查询表名以及表的列名

Atas ialah kandungan terperinci Oracle结合Mybatis实现取表的10条数据. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!