Android sqlite的最大值给出了错误的结果,但没有得到正确的值
我写了一个查询,它给了我结果,但不是我想要的确切结果。 例如,我有5000多张唱片,但结果是999张。 我的数据库查询是:Android sqlite的最大值给出了错误的结果,但没有得到正确的值,android,sql,sqlite,output,max,Android,Sql,Sqlite,Output,Max,我写了一个查询,它给了我结果,但不是我想要的确切结果。 例如,我有5000多张唱片,但结果是999张。 我的数据库查询是: Cursor c=db.rawQuery("select max(id) from table", null); 输出为: 999错误我在字符串列上是max qyery 游标c=db.rawQueryselect maxid from table,null 因此,它不是以整数存储,而是以字符串格式的文本存储 因此,如果我们有字符串格式,那么数字将以不同的方式排序 当我执行
Cursor c=db.rawQuery("select max(id) from table", null);
输出为:
999错误我在字符串列上是max qyery 游标c=db.rawQueryselect maxid from table,null 因此,它不是以整数存储,而是以字符串格式的文本存储 因此,如果我们有字符串格式,那么数字将以不同的方式排序 当我执行max查询时,它会产生max number而不是max id 比如说 如果我有0到4000条记录,则返回999 如果我有0到40000条记录,则返回9999
因此,这很麻烦,给了我错误的结果请尝试从表中选择count*。查询正在执行您希望它执行的操作。在表中的所有id中,999应该是最大id。请尝试从id>999的表中选择count*。您将得到0批次计数给我的结果是记录总数,并且我的id列的值大于计数值。