使用python和sqlite3的SQL strftime返回非

2024-04-16 21:56:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个问题like in this主题。我尝试过unixepoch,但即使这样,我的记录集还是没有返回任何结果

在sql中,直接返回一个

SELECT sum(value)
FROM customers
WHERE customer_id = 1
    AND devolution = 'No'
    AND strftime('%Y', delivery_date) IN ('2016')

但是,在python中,我没有从print self.rec[0]返回

^{pr2}$

有人能帮我吗? 非常感谢你。在


Tags: andinfrom主题sqlvaluecustomerthis
1条回答
网友
1楼 · 发布于 2024-04-16 21:56:59

python中的字符串错误:

  • 你不需要双倍的年收入。在
  • 如果您想添加参数,则必须引用条件“in”中的年份。在
  • 您不应该以这种方式应用params,而是让sqlite为您获取类型,就像您对customerId所做的那样。在

现在应该可以工作了:

self.cur.execute("SELECT sum(value) \
    FROM customers \
    WHERE customer_id=? \
    AND devolution='No' \
    AND strftime('%Y',delivery_date) IN (?)", (customerID, self.lastYear))

您不需要将customerID转换为str(),sqlite3应该可以为您完成。在

请注意,为了清晰起见,我在行尾加了“是的”(因为我打破了这些行),您可能不需要它们。在

相关问题 更多 >