数据库是oracle 10G
我现在插入数据:
insert into you (id,name) values (1,'john1');
insert into you (id,name) values (2,'john2');
insert into you (id,name) values (3,'john3');
insert into you (id,name) values (4,'john4');
insert into you (id,name) values (5,'john5');
我想取最后三条记录,
3 john3
4 john4
5 john5
这个怎么实现呢? 请指教
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
conn = DriverManager.getConnection(
"jdbc:oracle:thin:@localhost:1521:orcl", "zhang",
"zhang");
stmt = conn.createStatement();
String url = "select * from you where rownum<=3 order by id desc";
我这里只能取到前三条,取不了后三条,
rs = stmt.executeQuery(url);
while (rs.next()) {
out.print(rs.getString("id"));
out.print(rs.getString("name"));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (rs != null) {
rs.close();
}
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
答案1:
SELECT * FROM (SELECT * FROM you ORDER BY id DESC ) WHERE ROWNUM<=3;
如果ID是自增的,这样应该是可以的。
答案2:
应该是一个分页查询的问题
select id,name from (select id,name,rownum rn from you where rownum <= (select count(*) from you)) where rn > (select count(*) from you)-3;
最后 -3 是取数据表的最后3条,-n就是取最后几条
分享到:
相关推荐
### Java基础知识 #### 1. Java的基本数据类型与String类型的区别 Java中有八种基本数据类型,分为两类:整数类型(byte、short、int、long)和浮点类型(float、double),此外还包括布尔类型(boolean)和字符...
计算器完成的是一个数学表达式,如:3+2,所以可以采用一个链表(LinkedList 类)来存储数字或字符,如 3,+,2 分别存储在链表中,最后运算时,可以一一取出来进行运算。 本应用程序中的数字按钮和运算符按钮...
标题中的“java一亿数字取前100个(3秒钟获取)Java算法”涉及到一个经典的计算机科学问题,即在海量数据中快速找到最大的前N个元素。这个问题在大数据处理、排序以及性能优化等领域有着广泛的应用。在这个场景下,...
本文档概括了Java面试题的知识点,涵盖了Java基础知识、JSP&Servlet技术、J2EE相关知识、Web安全性、MVC、XML、structs、Session Bean、EJB、Java多线程、文件加密技术、软件开发生命周期、路由协议、Java AWT和...
Java加密解密工具集 JCT v1.0源码包 5个目标文件 内容索引:JAVA源码,综合应用,JCT,加密解密 WDSsoft的一款免费源代码 JCT 1.0,它是一个Java加密解密常用工具包。 Java局域网通信——飞鸽传书源代码 28个目标文件...
Java加密解密工具集 JCT v1.0源码包 5个目标文件 内容索引:JAVA源码,综合应用,JCT,加密解密 WDSsoft的一款免费源代码 JCT 1.0,它是一个Java加密解密常用工具包。 Java局域网通信——飞鸽传书源代码 28个目标...
### Java的JTable:从数据库取数据显示在表格中的关键技术点 #### 一、数据库操作与JDBC连接 在Java中,使用JTable显示数据库中的数据是一个常见的应用场景。首先,我们需要了解如何通过Java Database ...
### 实习生Java面试题集及详细答案解析 #### 一、Java基本数据类型与String类型 1. **Java的基本数据类型**: - Java语言提供了八种基本数据类型,可以分为以下几类: - **整数类型**:包括`byte`(8位)、`...
- 获取某个日期是否是当月的最后一天:可以使用 `java.time.LocalDate` 类的方法。 - 格式化日期:使用 `java.text.SimpleDateFormat` 或 `java.time.format.DateTimeFormatter`。 5. **数组和集合** - 数组是...
首先,你需要了解打印机支持的POS指令集,如ESC/POS命令集,然后在JAVA程序中创建一个字节流,填充这些命令,最后通过socket或文件流等方式将数据发送到打印机。例如,打印文本可以使用"ESC + @"初始化打印机,"GS +...
### Java程序设计习题集知识点解析 #### 一、Java基础知识 **1.1 Java概述** - **环境变量配置:** - 在Windows 2000操作系统中配置Java环境变量,主要是设置`JAVA_HOME`、`PATH`以及`CLASSPATH`等变量。 - `...
《Java程序设计》习题集是一本针对Java初学者的优秀资源,涵盖了Java基础知识和基本语法的练习题目。通过这些习题,学习者可以深入理解Java语言的关键概念和特性。 1. Java概述: - 配置Windows 2000下的环境变量...
Java加密解密工具集 JCT v1.0源码包 5个目标文件 内容索引:JAVA源码,综合应用,JCT,加密解密 WDSsoft的一款免费源代码 JCT 1.0,它是一个Java加密解密常用工具包。 Java局域网通信——飞鸽传书源代码 28个目标...
### Java调用Weka中神经网络的算法(从数据库中取数据) #### 一、概述 本文档旨在介绍如何利用Java编程语言结合Weka库来实现神经网络算法,并且能够从数据库中读取数据来进行训练与预测的过程。Weka是一款非常强大...
交叉验证将数据集划分为k个子集,每次用k-1个子集训练模型,剩下的子集进行测试,重复k次,最后取平均结果。这有助于减少过拟合的影响。 在实际应用中,决策树可能面临过拟合或欠拟合问题。过拟合是指模型对训练...
3. **多态实现**:Java通过继承、重载和覆盖实现多态。继承允许子类继承父类的属性和方法;重载发生在同一类中,方法名相同但参数列表不同;覆盖(重写)发生在子类中,方法名、返回类型和参数列表都与父类相同。 4...
`evaluate`方法返回的结果可能是一个节点集、一个数值、一个字符串,甚至更复杂的结构,取决于查询结果。在这个例子中,我们假设返回的是一个节点集,可以进一步遍历处理这些节点。 最后,你可以遍历`XdmNode`结果...
- Java使用Unicode字符集,这包括了ASCII字符集,并且支持世界上几乎所有的语言文字。 #### 10. Java中int类型的内存占用 - `int`类型在Java中占用4个字节。 #### 11. 合法的浮点数表示方式 - 合法的浮点数表示...
首先,我们需要了解Java SDK(Java Development Kit)是开发Java应用程序的基础工具集,它包含编译器、JRE(Java Runtime Environment)以及各种工具,如Javadoc和JAR。下面是Java SDK的安装步骤: 1. **下载Java ...
9. **桶排序**(Bucket Sort):桶排序将元素分配到有限数量的桶里,每个桶再单独排序,最后合并所有桶的结果。适合均匀分布的输入,时间复杂度可达到线性O(n + k)。 10. **基数排序**(Radix Sort):基数排序按照...