假设有一张名为"records"的表,其中包含字段"serial_number"和"timestamp",表示某个记录的序列号和时间戳。要返回具有最新时间戳的所有记录,可以使用以下SQL查询语句:
SELECT * FROM records WHERE timestamp = ( SELECT MAX(timestamp) FROM records WHERE serial_number = 'your_serial_number' );
其中,serial_number是所需数据的序列号。该查询语句会返回具有最新时间戳的、序列号与所选序列号匹配的所有记录。
示例代码:
import java.sql.*;
public class RecentRecords {
public static void main(String[] args) {
String url = "jdbc:mysql://localhost:3306/mydatabase";
String username = "root";
String password = "mypassword";
try (Connection conn = DriverManager.getConnection(url, username, password);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM records WHERE timestamp = (SELECT MAX(timestamp) FROM records WHERE serial_number = 'your_serial_number')")) {
while (rs.next()) {
String serialNumber = rs.getString("serial_number");
Timestamp timestamp = rs.getTimestamp("timestamp");
System.out.println("Serial number: " + serialNumber + ", Timestamp: " + timestamp);
}
} catch (SQLException e) {
System.out.println(e.getMessage());
}
}
}