在这个程序中,我想使用python从mysql数据库中提取YYYY-MM-DD格式的日期



代码:

cur = sqlCon.cursor()
cur.execute("select datedue from library where member=%s ", Member.get())
row = cur.fetchone()
print(datetime.date.today())
for x in row:
print(row)

但结果是的(datetime.date(2022,12,6),)

我该怎么办?????

您可以使用strftime()函数:

cur.execute("SELECT datedue FROM library WHERE member = %s", Member.get())
row = cur.fetchone()
date_str = row["datedue"].strftime("%Y-%m-%d")
print(date_str)

您也可以使用STR_TO_DATE()函数在MySQL端处理此问题:

sql = "SELECT STR_TO_DATE(datedue, '%Y-%m-%d') AS datedue FROM library WHERE member = %s"
cur.execute(sql, Member.get())
row = cur.fetchone()
date_str = row["datedue"]
print(date_str)

这里STR_TO_DATE()在数据库端返回一个字符串,因此在Python中不需要转换。

最新更新