写一个名为“ filtered_records”的函数,该函数不带任何参数并返回一个列表。有一个数据库保存在名为“ solar.db”的文件中,该数据库包含一个名为“ worry”的表,该表的“ hip”,“ log”和“ convention”列分别存储整数值。返回一个包含表中每个记录的列表,其“ log”值大于59。
import sqlite3
def filtered_records():
conn = sqlite3.connect('solar.db')
c = conn.cursor()
confirm_list = c.execute('SELECT log FROM worry').fetchall()
return [list(i) for i in confirm_list if i > 59]
conn.commit()
这是我尝试解决的问题。我在做什么错了?
答案 0 :(得分:0)
您必须在sql中过滤查询。此外,当您仅从数据库中选择行时,无需调用commit
,仅当您要将数据插入数据库时才应使用commit
函数,在这里您可以阅读有关{{3}的更多信息}
import sqlite3
def filtered_records():
conn = sqlite3.connect('solar.db')
c = conn.cursor()
confirm_list = c.execute('SELECT hip, log, convention FROM worry WHERE log > 59').fetchall()
return confirm_list