Python MySQL 日期時間格式化作為參數(shù)的操作
1.我的MySQL中的start_time存儲的是2018-03-21 10:55:32格式的時間,我需要按照YYYY-MM-DD格式來查詢,我的MySQL中的sql是這樣寫的:
SELECT * from mytable WHERE DATE_FORMAT(start_time,"%Y-%m-%d")='2018-03-21';
2.如果在Python中拼接的sql是:
sql = "select * from mytable where DATE_FORMAT(start_time,'%Y-%m-%d') < '2018-03-21'"
則執(zhí)行cursor.execute(sql)是可以查詢的。
3.但是如果將時間'2018-03-21'作為參數(shù),注意,Python中的sql應(yīng)該這樣拼接:
ss = "2018-03-21" sql = "select * from mytable where DATE_FORMAT(start_time,'%Y-%m-%d')<"+"'"+ss+"'" cursor.execute(sql)
這里一定注意后面兩個雙引號包裹的單引號,這樣拼接出來的sql才會有單引號包裹日期字符串!
這樣可以把Python拼接的sql進行print打印出來,就是:
select * from mytable where DATE_FORMAT(start_time,'%Y-%m-%d')<'2018-03-21'
完全與MySQL的sql一樣了。
補充拓展:python將系統(tǒng)時間寫入mysql的datetime類型字段
還是看代碼吧!
dt=datetime.datetime.now().strftime("%Y-%m-%d%H:%M:%S") models.ptask.date_changed=datetime.datetime.fromtimestamp(time.mktime(time.strptime(dt,"%Y-%m-%d%H:%M:%S")))
以上這篇Python MySQL 日期時間格式化作為參數(shù)的操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python MySQLdb 使用utf-8 編碼插入中文數(shù)據(jù)問題
這篇文章主要介紹了Python MySQLdb 使用utf-8 編碼插入中文數(shù)據(jù)問題,需要的朋友可以參考下2018-03-03