gpt4 book ai didi

python - 使用 SQL 和 python 将时间单位添加到时间戳

转载 作者:行者123 更新时间:2023-11-29 13:23:49 25 4
gpt4 key购买 nike

我正在尝试在 python 中使用以下方法将小时数添加到时间戳

def add_hours(date, hour, duration):

conn = database_connect()
cur = conn.cursor()
val = None

start_time = date+" "+hour+":00:00"

try:
cur.execute("""SELECT timestamp %s + interval '%s hour' """,(start_time, duration))
val = cur.fetchall()
except:
print("fetcherror")

cur.close()
conn.close()
return val

日期和小时已连接到时间戳

(它看起来像一个 SQL 时间戳值:2016-5-24 18:00:00)

我查看了此处提供的 postgreSQL 文档: http://www.postgresql.org/docs/8.0/static/functions-datetime.html并直接测试查询(它工作正常)很明显,我的错误在于查询的 python 处理,但我无法弄清楚它是什么。

我不明白什么?

最佳答案

您必须提供完整的区间变量,而不仅仅是数字部分。最好为您的 start_time 使用 datetime-object:

start_time = datetime.datetime(2016, 05, 24, 12, 4, 0)
duration = 4
cur.execute("""SELECT timestamp %s + interval %s""", (start_time, '%s hours' % duration))
result = cur.fetchall()
# -> [(datetime.datetime(2016, 5, 24, 16, 4),)]

关于python - 使用 SQL 和 python 将时间单位添加到时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37407567/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com