[英]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.