java mysql select语句不返回完整日期

标签 java

我是一个java新手,但我不确定我做错了什么。当我尝试从数据库中检索最后两个日期时,它只显示年份(而在 mysql 中,相同的命令提供了正确的结果)。

Mysql 命令:从基金分析中选择不同日期 ORDER BY 日期 DESC LIMIT 2

预期结果:

2011-06-13
2011-06-08

这是我的java代码:

        preparedStatement = con.prepareStatement("SELECT DISTINCT date From fundanalysis ORDER BY date DESC LIMIT 2");
        ResultSet numberofrowsresultset = preparedStatement.executeQuery();
        numberofrowsresultset.next();
        // most recent date
        currentdate.add(numberofrowsresultset.getInt("date"));
        System.out.print(numberofrowsresultset.getInt("date"));
        numberofrowsresultset.next();
        // last date before most recent
        currentdate.add(numberofrowsresultset.getInt("date"));
        return currentdate;

最终结果为:[2011, 2011]

我基本上想要与运行 mysql 查询时得到的结果完全相同的结果,因为我必须按原样提交它以便稍后在程序中执行另一个查询。

请帮忙!

最佳答案

它是.getDate而不是.getInt

尝试:

numberofrowsresultset.getDate("date");

关于java mysql select语句不返回完整日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6381385/

相关文章:

Java 控制台(Eclipse、Mac)

java - 为什么我的错误被 Kapt 和 Kotlin 掩盖了?如何增加错误限制?

java - (C2) 从哪里来

java - 将多个对象添加到 JPanel 后,仅绘制最后一个 JComponent

java - 如何在java文件I/O中将所有数字乘以10

java - 在 jar 中找不到属性文件

java - 匿名类方法访问

java - 泛型 - 使用 this 从另一个调用参数化构造函数

java - Tomcat - 释放http线程超时

java - 在 Java 中使用 while 循环