java 结合 oracle 实现创建时间为上个月数据的代码
时间: 2024-03-21 22:43:52 浏览: 14
您好,以下是Java结合Oracle实现创建时间为上个月数据的代码示例:
```java
import java.sql.*;
public class OracleExample {
static final String JDBC_DRIVER = "oracle.jdbc.driver.OracleDriver";
static final String DB_URL = "jdbc:oracle:thin:@localhost:1521:xe";
static final String USER = "username";
static final String PASS = "password";
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try {
Class.forName(JDBC_DRIVER);
conn = DriverManager.getConnection(DB_URL,USER,PASS);
stmt = conn.createStatement();
String sql = "SELECT * FROM your_table WHERE created_date >= ADD_MONTHS(TRUNC(SYSDATE, 'MONTH'), -1) AND created_date < TRUNC(SYSDATE, 'MONTH')";
ResultSet rs = stmt.executeQuery(sql);
while(rs.next()){
int id = rs.getInt("id");
String name = rs.getString("name");
Date createdDate = rs.getDate("created_date");
System.out.print("ID: " + id);
System.out.print(", Name: " + name);
System.out.println(", Created Date: " + createdDate);
}
rs.close();
stmt.close();
conn.close();
} catch(SQLException se) {
se.printStackTrace();
} catch(Exception e) {
e.printStackTrace();
} finally {
try {
if(stmt!=null)
stmt.close();
} catch(SQLException se2) {
}
try {
if(conn!=null)
conn.close();
} catch(SQLException se){
se.printStackTrace();
}
}
}
}
```
这段代码会查询名为 "your_table" 的表格中,创建日期为上个月的所有数据,然后将其打印输出。其中,`ADD_MONTHS(TRUNC(SYSDATE, 'MONTH'), -1)` 表示当前日期的上个月第一天,`TRUNC(SYSDATE, 'MONTH')` 表示当前日期的本月第一天。您可以将其替换为您所需的表名和日期字段名。