2016-03-15 85 views
0

我有一个查询依赖avg()使用sqlite-jdbc连接到一个sqlite数据库。然而,当我的查询运行时,我得到的平均值为0.0的答案,但是当我在其他地方(便携式数据库查看器)运行相同的查询时,我得到了预期的(非零)值。为什么?avg()与sqlite-jdbc

被平均的列是一个整数列表。

SELECT COUNT(col) as count, AVG(col) as average FROM table WHERE <many-clauses-here> 

计数返回正确。

值进行平均化: “54”,“56”,“66”,“53”

的文件格式是sqlite的,但它是风格的方式是,虽然这应该由ddf spec给出的规格不是相关的

+0

你能告诉我们查询和涉及的数据吗?这里可能会有一个四舍五入的问题。 –

+0

这是我从未想过的事情。这是为了工作,所以我会明天检查其他值集合。 – Alastair

+0

可能是一个不同的数据库。 –

回答

0

我尝试使用正则语句而不是PreparedStatement后,发现它按预期工作。按照here的描述,我错误地使用了JDBC。我对JDBC很陌生(以前没有用过它),所以我犯了一个菜鸟错误,但它表现得很奇怪。