我遇到一个问题,我收到一个空ResultSet的查询,我知道该查询适用于给定的数据库。该数据库(截断和匿名)如下:-- Table: placesCREATE TABLE places (id INTEGER PRIMARY KEY AUTOINCREMENT, venue_id INTEGER, timestamp INTEGER, venue_name TEXT);INSERT INTO places (id, venue_id, timestamp, venue_name) VALUES (1, 1, 1533231909000, 'Place 1');INSERT INTO places (id, venue_id, timestamp, venue_name) VALUES (2, 2, 1533231909000, 'Place 2');INSERT INTO places (id, venue_id, timestamp, venue_name) VALUES (3, 1, 1533231911000, 'Place 1');INSERT INTO places (id, venue_id, timestamp, venue_name) VALUES (4, 1, 1533232901300, 'Place 1');INSERT INTO places (id, venue_id, timestamp, venue_name) VALUES (5, 2, 1533233301300, 'Place 2');INSERT INTO places (id, venue_id, timestamp, venue_name) VALUES (6, 3, 1533245000000, 'Place 3');-- Table: opening_timesCREATE TABLE opening_times (id INTEGER PRIMARY KEY AUTOINCREMENT, venue_id INTEGER, timestamp INTEGER);INSERT INTO opening_times (id, venue_id, timestamp) VALUES (1, 1, 1546300836000);INSERT INTO opening_times (id, venue_id, timestamp) VALUES (2, 2, 1546300840000);INSERT INTO opening_times (id, venue_id, timestamp) VALUES (3, 1, 1546300840000);INSERT INTO opening_times (id, venue_id, timestamp) VALUES (4, 1, 1533231911000);INSERT INTO opening_times (id, venue_id, timestamp) VALUES (5, 1, 1533232011000);INSERT INTO opening_times (id, venue_id, timestamp) VALUES (6, 3, 1533232011000);INSERT INTO opening_times (id, venue_id, timestamp) VALUES (7, 2, 1533232011000);我的代码正在生成以下 SQL 命令(尽管打印效果不佳)SELECT DISTINCT p.venue_name, q.changesFROM (SELECT COUNT(*) - 1 AS changes, venue_id, timestamp我已经准备了许多 SO 帖子,据我所知,我遵循了正确的步骤以正确获取数据。其他不太复杂的查询工作得很好,似乎这个特定的查询目前无法返回数据。我还使用 Java 8 和org.xerial:sqlite-jdbc3.25.2 版连接到数据库,如果这有什么不同的话。
1 回答

慕尼黑5688855
TA贡献1848条经验 获得超2个赞
此问题已通过恢复到org.xerial:sqlite-jdbc:3.21.0.1
我在我的 OSX 10.14 机器上遇到了这个问题,但更高版本的 3.25.2 似乎适用于 Windows 和 Linux 上的其他用户。
添加回答
举报
0/150
提交
取消