繁体   English   中英

SQLite3 Python按月提取数据

[英]SQLite3 python extracting data by month

我有一个表,其中填充了值,其中一个是YYYY-MM-DD格式的日期。 我正在尝试按月打印所有“费用”值。 所以,

def SumByMonth():
    usrDate = raw_input('Enter month: ')
    sql = '''SELECT cost FROM Finance WHERE strftime('%m', date) = ?''', (usrDate)
    month_cost = [t[0] for t in cur.execute(sql)]
    print month_cost

这段代码给我这个错误:

ValueError: operation parameter must be str or unicode

所以我认为SQL命令实际上没有提取任何东西吗? 我在这里想念什么?

线路有问题

sql = '''SELECT cost FROM Finance WHERE strftime('%m', date) = ?''', (usrDate)

您需要像错误状态一样以字符串或Unicode格式编写SQL查询

这是正确的代码:

def SumByMonth():
    usrDate = raw_input('Enter month: ')
    month_cost = [t[0] for t in cur.execute("SELECT cost FROM Finance WHERE strftime('%m', date) = ?", (usrDate,))]
    print month_cost

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM