从表中选择最大值(日期)始终返回1970-01-01

时间:2014-10-22 23:19:31

标签: android sqlite ormlite

我正在尝试使用ORMLITE lib选择最大日期:

 GenericRawResults<Object[]> result = null;

    try {
        String sql = "select MAX(t.last_updated_on_server_utc) from measurements t";

        result = databaseManager.getMeasurementDao().queryRaw(
                sql, new DataType[]{DataType.DATE_LONG}
        );
        List<Object[]> results = result.getResults();
        if (results.size() == 0) {
            return null;
        } else {
            Date d = (Date) results.get(0)[0];
//                Date d = new Date((Long) results.get(0)[0]);
            Log.d(TAG, "d=" + d);
        }

    } catch (SQLException e) {

    }

返回的日期始终是1970-01-01(即调试输出中d的值)...该字段被声明为java.util.Date。我也尝试过使用DataType.LONG,但仍然是一样的。如果我使用原始查询来选择其中一个日期列,那么我的问题是当我使用MAX()时。

0 个答案:

没有答案