从pgsql中检索created_at时间戳

时间:2016-05-19 06:47:00

标签: python postgresql python-2.7

我是一个Python新手。我写了一个SQL查询来检索pgsql中的created_at时间戳。当我调用方法strftime('%x')时,我收到了这个错误:

AttributeError: 'long' object has no attribute 'strftime'

这是查询:

SELECT created_at FROM rating WHERE user_id = 'xxxxx' ORDER BY id DESC LIMIT 2;

当我打印查询结果时,我只得到[(3L,)],它只是预期的两个created_at时间之一。如何将其转换回python的日期时间?

1 个答案:

答案 0 :(得分:0)

strftime看起来不可调用,你导入了DateTime吗?

此外,在调用strftime时,您需要对其进行格式化,例如created_at.strftime('%y%B%d')。

最后,在SQL中处理和转换时间实际上更快,而不是使用strftime。

更简单,更高效的解决方案是在SQL本身中进行格式化:

SELECT to_char(created_at,'YY-MM-DD HH24:MI:SS') FROM rating WHERE user_id = 'xxxxx' ORDER BY id DESC LIMIT 2;