我正在尝试sqlite3表中的搜索记录,以获得插入where条件的最后一条记录,但我只能使用一个condition WHERE CODE = df = "DS3243"。但是我想要做的是使用多个WHERE条件jf = "QS2134", df = "DS3243", sf = "MS5787",这样我就可以得到最后一条与提供的代码一起插入的记录。
脱菌
CODE POINT
QS2134 1000
DS3244 2000
MS5787 3000
QS2134 130
QS2134 200 # want to get this because it last with such code
DS3244 300
MS5787 4500
DS3244 860 # want to get this because it last with such code
MS5787 567
MS5787 45009 # want to get this because it last with such code我只能做一个变量cur.execute("SELECT * FROM PROFILE WHERE CODE=? ORDER BY POINT ASC LIMIT 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()发布于 2018-08-02 15:40:43
我不确定我是否理解你的问题,但你的意思是你想把结果分组吗?你要找的是“按组分组”条款吗?
类似于:
select CODE, MAX(POINT) group by CODE;发布于 2018-08-02 12:53:12
我认为您只是试图扩展查询,在这种情况下,为什么不尝试字符串格式设置呢?
x = "SELECT * FROM my_table where col1 = '{0}' or col2 ='{1}';".format(var_1, var_2)
cur.execute(x)这样,您就可以用任意多个条件扩展查询。
https://stackoverflow.com/questions/51652795
复制相似问题