-2

我想根据比较两个日期采取一些行动。日期 1 存储在 python 变量中。在 select 语句中从数据库中检索日期 2。例如,我想从数据库中检索一些记录,其中记录中的关联日期(以时间戳的形式)晚于 python 变量定义的日期。最好,我希望比较采用可读的日期格式,而不是时间戳。

我是python的初学者。

----编辑 ----- 抱歉含糊不清。这是我想做的事情:

从日期时间导入 MySQLdb 作为 mdb 从日期时间导入日期时间 导入日期 导入时间

conn = mdb.connect('localhost','root','root','my_db') cur = conn.cursor()

right_now = date.today()// python 日期

这是我想弄清楚的部分

数据库有一个带有时间戳的表。我想将该时间戳与该日期进行比较,然后根据该比较检索记录。例如,我想检索时间戳高于此日期的所有记录 cur.execute("SELECT created from node WHERE timestamp > right_now") results = cur.fetchall() for row in results: print row

4

2 回答 2

1

首先,我猜 Date 1 (python 变量)是一个 datetime 对象。http://docs.python.org/2/library/datetime.html

就我使用它而言,如果 sql 类型是 datetime,MySQLdb 会为您提供 (python) datetime 对象的结果。

所以实际上你什么都不做,你可以使用python datetime比较方法与日期1和日期2。

于 2013-04-11T19:38:53.097 回答
0

我对“以可读日期格式而不是时间戳进行比较”有点困惑。我的意思是时间戳足够可读,对吧?

如果 Date 1 是时间戳数据,那么您只需进行比较。如果没有,则将其转换为时间戳或将数据库中的日期转换为日期类型,两种方式都可以。

如果您询问如何编写代码来进行比较,您可以使用“_mysql”或 sqlalchemy 来帮助您。详细的语法可以在任何地方找到。

反正问题本身还不够清楚,所以答案也很模糊。

于 2013-04-11T19:53:10.763 回答