为什么select在Sqlite中不起作用?

时间:2018-08-28 09:49:37

标签: python django django-models sqlite

我正在sqlite3语句中使用selectdjango数据库(默认数据库)中获取行

p=connection.cursor().execute("SELECT * FROM webapp_information WHERE dat  BETWEEN date('now', 'start of day') AND date('now', 'localtime');")
a=p.fetchall()
for i in a:
  print(i)`

我从一天中选择数据(日期字段) 我检查了管理面板上的日期存储。 却什么也没返回

我尝试了不同的方式。但我得到了:

  

在[206]中:p = connection.cursor()。execute(“ SELECT * FROM   webapp_information WHERE dat ='2018-08-28';“)

它返回一个空列表,但是我很确定日期存储在其中。 有什么帮助吗?先感谢您。 Modules.py

from __future__ import unicode_literals
from django.db import models 
import datetime

# Create your models here.

class information(models.Model):
login=models.CharField(max_length=100,)
idd=models.CharField(max_length=100,)
avatar_url=models.CharField(max_length=100,default='nll',null=True)
gravatar_id=models.CharField(max_length=100,default='nll',null=True)
url=models.CharField(max_length=100, default='nll',null=True)
html_url=models.CharField(max_length=100,default='nll',null=True)
followers_url=models.CharField(max_length=100,default='nll',null=True)
following_url=models.CharField(max_length=100,default='nll',null=True)
gists_url=models.CharField(max_length=100,default='nll',null=True)
starred_url=models.CharField(max_length=100,default='nll',null=True)
subscriptions_url=models.CharField(max_length=100,default='nll',null=True)
organizations_url=models.CharField(max_length=100,default='nll',null=True)
repos_url=models.CharField(max_length=100,default='nll',null=True)
events_url=models.CharField(max_length=100,default='nll',null=True)
received_events=models.CharField(max_length=100,default='nll',null=True)
typ=models.CharField(max_length=100,default='nll',null=True)
site_admin=models.CharField(max_length=100,default='nll',null=True)
name=models.CharField(max_length=100,default='nll',null=True)
company=models.CharField(max_length=100,default='nll',null=True)
blog=models.CharField(max_length=100,default='nll',null=True)
location=models.CharField(max_length=100,default='nll',null=True)
email=models.CharField(max_length=100,default='nll',null=True)
hireable=models.CharField(max_length=100,default='nll',null=True)
bio=models.CharField(max_length=100,default='nll',null=True)
public_repos=models.CharField(max_length=100,default='nll',null=True)
public_gists=models.CharField(max_length=100,default='nll',null=True)
followers=models.CharField(max_length=100,default='nll',null=True)
following=models.CharField(max_length=100,default='nll',null=True)
created_at=models.CharField(max_length=100,default='nll',null=True)
updated_at=models.CharField(max_length=100,default='nll',null=True)
dat = models.DateField()
class sapi(models.Model):
    dat = models.DateField()

1 个答案:

答案 0 :(得分:1)

我认为您正在尝试使用日期范围进行类似操作:

from webapp.models import Information

start_of_day_date = ...
now_date ...

p = Information.objects.filter(
    dat__range=(start_of_day_date, now_date),
)

for i in p:
    print(p)

要详细了解如何设置start_of_day_datenow_date,请参阅此帖子:Determine start and end time of current day (UTC -> EST -> UTC) ; Python

祝你好运!