Python, sqlite3, проблемы с выводом данных при определенном параметре (дате)

такой вопрос: почему при выборе текущей даты не выводит данные при запросе? Если больше, меньше -- работает, а вот когда хочу сравнить с текущей датой, то результата не дает.

import sqlite3

con = sqlite3.connect('DB.db')

def sql_fetch(con):

cursorObj = con.cursor()

cursorObj.execute('SELECT NUMBER, EQUIPMENT FROM Sheet1 where DATE = current_date')

rows = cursorObj.fetchall()

for row in rows:

    print(row)

sql_fetch(con)

Это как-то связано с форматом даты в базе данных (YYYY-MM-DD HH:MM:SS)? В БД у меня, к примеру, 2022-08-21 00:00:00, и из-за этого времени мы друг друга не понимаем.


Ответы (1 шт):

Автор решения: Ihor Rodionov

Не уверен в каком формате вы передаете в базу параметр времени, но оно должно быть в формате TimeStamp, а там то что у него минуты и секунды не слишком важно. Например, можно примерно так:

cursorObj.execute('SELECT NUMBER, EQUIPMENT FROM Sheet1 where DATE = ?', (datetime.datetime.now()))

Вместо ? - будут подставляться значения из кортежа

→ Ссылка