Python 如何使用where条件获取sqlite3数据库中的最后一条记录
我正在尝试搜索sqlite3表中的记录,以获取插入where条件的最后一条记录,但我只能使用一个Python 如何使用where条件获取sqlite3数据库中的最后一条记录,python,sqlite,Python,Sqlite,我正在尝试搜索sqlite3表中的记录,以获取插入where条件的最后一条记录,但我只能使用一个条件,其中code=df=“DS3243”。但我想做的是使用多个WHERE条件,这样我就可以得到插入代码的最后一条记录 演示 我只能对一个变量执行cur.execute(“从概要文件中选择*,其中代码=?按点ASC限制1排序)”,(df,),但我想对多个变量执行 import sqlite3 jf = "QS2134" df = "DS3243" sf = "MS5787" con = s
条件,其中code=df=“DS3243”
。但我想做的是使用多个WHERE条件,这样我就可以得到插入代码的最后一条记录
演示
我只能对一个变量执行cur.execute(“从概要文件中选择*,其中代码=?按点ASC限制1排序)”,(df,)
,但我想对多个变量执行
import sqlite3
jf = "QS2134"
df = "DS3243"
sf = "MS5787"
con = sqlite3.connect("TEST.db")
cur = con.cursor()
cur.execute("SELECT * FROM PROFILE WHERE CODE=? ORDER BY POINT ASC LIMIT 1 ",(df,)) # limit one means last one
rows = cur.fetchall()
for row in rows:
print(row)
con.commit()
con.close()
我认为您只是在尝试扩展查询,在这种情况下,为什么不尝试字符串格式呢
x = "SELECT * FROM my_table where col1 = '{0}' or col2 ='{1}';".format(var_1, var_2)
cur.execute(x)
通过这种方式,您可以使用任意多的条件扩展查询。我不确定是否理解您的问题,但您的意思是要对结果进行分组吗? 你要找的是“分组依据”条款吗 比如:
select CODE, MAX(POINT) group by CODE;
我有点不清楚问题出在哪里。当您尝试将解决方案扩展到多个WHERE条件时会发生什么情况?我还没有尝试过,您能帮我解决吗?如果我不知道问题是什么,恐怕这很困难。我建议你检查一下房间。它很好地解释了语法。
select CODE, MAX(POINT) group by CODE;