首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用python从sql数据库检索具有正确格式的时间戳。

如何使用python从sql数据库检索具有正确格式的时间戳。
EN

Stack Overflow用户
提问于 2010-07-09 23:55:46
回答 1查看 160关注 0票数 1

我想从sql数据库中检索具有适当格式的时间戳。这是我使用的部分代码:

代码语言:javascript
复制
import MySQLdb

def connectDB(self):
    global cursor
    DATABASE = MySQLdb.connect(
        host    = self.HOST,
        user    = self.USER,
        passwd  = self.PASS,
        db      = self.DB,
        port    = self.PORT,
        ssl = self.SSL_SETTINGS
        )

    cursor = DATABASE.cursor()

def getLastReport(self):
    sql = "SELECT timestamp FROM dataset Limit 0,1;"
    self.connectDB()
    cursor.execute(sql)
    lastReport = cursor.fetchone()
    return lastReport

最后一份报告返回:

代码语言:javascript
复制
(datetime.datetime(2010, 7, 7, 19, 55),)

我想要这样的东西:

代码语言:javascript
复制
2010-7-7 19:55

我知道如何将其更改为字符串,然后重新格式化它,但是应该有一种简单的方法来获取时间戳,以便它已经格式化。另外,如何抓取一个浮点型、整型或字符串,以便它已经格式化,而不是试图自己格式化它。我是sql的新手,但是必须有一种方法来获取正确格式化的数据,因为在创建表时必须声明数据类型。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-07-10 00:19:32

您可以使用Python函数,尽管这并不比在DATE_FORMAT端执行更容易。实际上,它的局限性要大得多,因为fetchone返回的是Python字符串,而不是datetime对象。

代码语言:javascript
复制
sql = "SELECT DATE_FORMAT(timestamp,"%Y-%m-%d %k:%i") FROM dataset Limit 0,1;"

代码语言:javascript
复制
adate=datetime.datetime(2010, 7, 7, 19, 55)
adate.strftime('%Y-%m-%d %H:%M')
# 2010-07-07 19:55
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3214345

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档