gpt4 book ai didi

java - MySQL 的准备语句,以便它会选择包含最高时间戳的行,该列将比给定参数更大?

转载 作者:行者123 更新时间:2023-11-29 14:56:00 25 4
gpt4 key购买 nike

如何为 MySQL 编写 Java 准备语句,以便它从给定参数较大的列中选择包含最高时间戳值的行?

我得到了:SELECT * FROM 表 WHERE timestamp_col=(SELECT MAX(timestamp_col) FROM 表)

但是如何将其转换为准备好的语句呢?

最佳答案

由于没有真正的参数,所以非常简单:

Connection con = null;
PreparedStatement prest;
try{
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://<server>:3306/<db>","<login>","<pass>");
try{
String sql = "SELECT * FROM table WHERE timestamp_col=(SELECT MAX(timestamp_col) FROM table)";
prest = con.prepareStatement(sql);
// prest.setInt(1,12000); // example of using a parameter for prepared statement
// parameters go in the SQL as ?
ResultSet rs1 = prest.executeQuery();
} catch( SQLException s ) { /* etc */ }

如果您只是要求 MAX(),则不需要参数。这是绝对安全的。

关于java - MySQL 的准备语句,以便它会选择包含最高时间戳的行,该列将比给定参数更大?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4632547/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com