java - 使用 SQL Query 获取玩家位置的方法
问题描述
我想创建一个 BuildFFA 插件。这个插件包含一个统计系统。我想创建一个计算你的位置的方法。
public static int ranking(UUID uuid) {
try (PreparedStatement ps = MySQL.getConnection().prepareStatement("SELECT *, ROW_NUMBER() OVER (ORDER BY Kills DESC) pos FROM kills WHERE UUID = ?")){
ps.setString(1, uuid.toString());
ResultSet rs = ps.executeQuery();
if(rs.next()) {
return rs.getRow();
}
} catch (SQLException e) {
e.printStackTrace();
}
return -1;
}
问题:如果数据库包含播放器,它总是返回 1。我该如何修复它?
解决方案
您需要使用rs.getInt('<columnName>')
而不是rs.getRow()
推荐阅读
- c++ - 重载复合“+=”运算符作为自由函数
- c++ - 代码使用命名空间运行,但不使用 std::cout
- youtube-data-api - 使用 YouTube 数据 API 时,YouTube 数据 API 凭据不起作用
- python - 如何在运行时替换装饰器?
- jquery - jquery 根据元素的特定属性选择元素的子元素
- javascript - 编写一个函数,返回一个包含所有匹配项的新字符串。然后将每个匹配项替换为替换字符
- google-chrome - 扩展中消息传递的兼容性库,Firefox 与 Chrome
- python - 从文本文件制作元组列表
- typescript - 重写现有的 websocket 以与 typescript 一起使用
- java - 如何找到好的解决方案或优化解决方案