我有一个像下面这样的数据库datetime valuedate1 200date2 230date3 210date4 240date5 220我找出我想动态找出上面 2 行的最大值的列的 rowid 假设我为 date4 找到了 4,我想计算值 230,210 和 240 的最大值,即 240我给出以下命令c.execute("SELECT MAX(value) FROM TABLE LIMIT "+str(rowid-2)+",3")print(c.fetchall())问题是游标没有填充并返回一个空列表c.execute("SELECT value FROM TABLE LIMIT "+str(rowid-2)+",3")print(c.fetchall())它返回 3 行(列表中的 3 个元组)的正确值。我可以不使用 max 限制吗?问题是什么?我是否必须制作另一个等效于 rowid 的 int 列才能很好地查询并通过 numberingColumn 使用订单,还是有更好的解决方案?
1 回答
牧羊人nacy
TA贡献1862条经验 获得超7个赞
c.execute("SELECT MAX(TEMPVALUE) FROM (SELECT value AS TEMPVALUE FROM TABLE LIMIT "+str(rowid+2)+",3)")
解决了问题!
添加回答
举报
0/150
提交
取消