首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在具有where条件的sqlite3 db中获得最后记录

问如何在具有where条件的sqlite3 db中获得最后记录
EN

Stack Overflow用户
提问于 2018-08-02 11:44:13
回答 2查看 429关注 0票数 0

我正在尝试sqlite3表中的搜索记录,以获得插入where条件的最后一条记录,但我只能使用一个condition WHERE CODE = df = "DS3243"。但是我想要做的是使用多个WHERE条件jf = "QS2134", df = "DS3243", sf = "MS5787",这样我就可以得到最后一条与提供的代码一起插入的记录。

脱菌

代码语言:javascript
复制
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,)),但我想要做的多变量。

代码语言:javascript
复制
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()
EN

回答 2

Stack Overflow用户

发布于 2018-08-02 15:40:43

我不确定我是否理解你的问题,但你的意思是你想把结果分组吗?你要找的是“按组分组”条款吗?

类似于:

代码语言:javascript
复制
select CODE, MAX(POINT) group by CODE;
票数 1
EN

Stack Overflow用户

发布于 2018-08-02 12:53:12

我认为您只是试图扩展查询,在这种情况下,为什么不尝试字符串格式设置呢?

代码语言:javascript
复制
x = "SELECT * FROM my_table where col1 = '{0}' or col2 ='{1}';".format(var_1, var_2)
cur.execute(x)

这样,您就可以用任意多个条件扩展查询。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51652795

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档