gpt4 book ai didi

java - SQL 查询在 SQL 编辑器中和通过 Java 执行时显示不同的答案

转载 作者:行者123 更新时间:2023-11-29 13:04:15 25 4
gpt4 key购买 nike

我需要从 Register 表中获取一个月中的天数。我正在使用以下 SQL 查询:

SELECT DateTo::Date-DateFrom::Date AS DaysInMonth FROM Register;

在 PostgreSQL 的 SQL 编辑器中执行它时,我得到以下结果: enter image description here

虽然通过 java 代码执行相同的操作,但我得到的结果是 29 days 而不是 29我在这里添加 java 代码

sql = " SELECT DateTo::Date-DateFrom::Date AS DaysInMonth FROM Register; "                  
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
pstmt = DB.prepareStatement(sql, null);
pstmt.setInt(1, payReg.getC_Period_ID());
rs = pstmt.executeQuery();
while (rs.next()){
System.out.println(rs.getString("DaysInMonth"));
}
}catch (SQLException e){
e.printStackTrace();
}

可能是什么原因……?我只需要从 java 执行中获取 29。我怎么得到它..?提前致谢。

最佳答案

试试这个..DATE_PART('days',DATE_TRUNC('month', DateTo) - DATE_TRUNC('month', Datefrom)) as DaysInMonth

关于java - SQL 查询在 SQL 编辑器中和通过 Java 执行时显示不同的答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19241174/

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