如何从表中的记录返回特定列表?

时间:2018-11-24 21:57:23

标签: python database list sqlite

写一个名为“ 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()

这是我尝试解决的问题。我在做什么错了?

1 个答案:

答案 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