2013-03-07 61 views
0

我試圖在某個日期之後提取記錄。GOOGLE APP引擎數據庫中的日期比較/ PYTHON

我用下面的代碼:

qstr = "SELECT * FROM Comment where date > '"+str(max_date)+"' order by date desc limit 10" 
comments = db.GqlQuery(qstr) 

我有控制檯日誌我有QSTR如下:

SELECT * FROM Comment where date > '2013-03-07 04:33:31' order by date desc limit 10" 

但是,這不會產生任何記錄(有在DB記錄)。

我也試過路過的日期時間:

comments = db.GqlQuery("SELECT * FROM Comment where date > :1 order by date desc limit 10", 
           miscUtils._datetime_from_str(max_date)) 

這也不會產生任何結果。你能讓我知道我做錯了什麼嗎? (我正在使用以下代碼將日期字符串轉換爲日期http://code.activestate.com/recipes/577135-parse-a-datetime-string-to-a-datetime-instance/

另外,我嘗試調試App Engine控制檯中的語句,但我無法這樣做。

在此先感謝

+0

什麼是屬性類型''中的一種Comment'財產date'的? 我的意思是,它是'StringProperty'還是'DateTimeProperty'? – 2013-03-07 05:12:34

+0

[看這裏] [1] 使用NDB和日期時間有些日期查詢 [1]:http://stackoverflow.com/a/15184526/784435 – 2013-03-07 05:18:03

+0

我把它作爲工作如下:評論= db.GqlQuery(「select * from Comment where date」:1 order by date desc limit「+ MAX_COMMENTS_PER_FETCH_STR, datetime.datetime.strptime(max_date,」%Y-%m-%d%H:%M:%S 「)。日期()) – 2013-03-08 17:26:15

回答

0

我得到它的工作方式如下:comments = db.GqlQuery("select * from Comment where date > :1 order by date desc limit "+MAX_COMMENTS_PER_FETCH_STR, datetime.datetime.strptime(max_date, "%Y-%m-%d %H:%M:%S").date())

謝謝大家對你的幫助