簡體   English   中英

Python3 SQLite查詢

[英]Python3 SQLite query

我在使用Python3 sqlite查詢時遇到問題。

這是我從sqlite3解釋器運行的以下查詢,它運行良好:

  SELECT {some_columns} FROM {tableA} WHERE bus='ABCD' AND 
    datetime(date_column||" "||time_column) >= datetime('2019-03-19 05:30:00') 
    INTERSECT
  SELECT {some_columns} FROM {tableA} WHERE bus='ABCD' AND
    datetime(date_column||" "||time_column) <= datetime('2019-03-19 05:30:00', '+135 minutes');

但是,當我在Python中如下運行相同的查詢時,它總是返回None

cur.execute('''SELECT colA FROM tableA WHERE bus='ABCD' AND
    datetime(date_column||" "||time_column) >= dateteime(?) 
    INTERSECT
    SELECT colA FROM tableA WHERE bus='ABCD' AND
    datetime(date_column||" "||time_column) <= dateteime(?)''', (
bus,
dt.strftime('%Y-%m-%d %H:%M:%S'),
"'%s', '+%s minutes'" % (lookup_time.strftime("%Y-%m-%d %H:%M:%S"),
                                                              duration)

)).fetchall()

任何幫助或想法,將不勝感激。 SQlite表中已正確定義了“公共汽車”和日期/時間列。

解決了!

我改用datetime模塊。 我最后的python代碼是:

lookup_end_time = lookup_time + datetime.timedelta(minutes=135)

...代碼在這里修剪...

cur.execute('''SELECT colA FROM tableA WHERE bus='ABCD' AND
    datetime(date_column||" "||time_column) >= dateteime(?) 
    INTERSECT
    SELECT colA FROM tableA WHERE bus='ABCD' AND
    datetime(date_column||" "||time_column) <= dateteime(?)''', (
bus,
dt.strftime('%Y-%m-%d %H:%M:%S'),
lookup_end_time

)).fetchall()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM