我的数据库是SQLServer2008
我想在数据库中查询的时间字符类型(如finishdate)是datetime2
我只需要介于“10-11”和“10-17”之间的数据。 当使用Sqlalchemy时,我使用
cast(FinishDate, DATE).between(cast(time1, DATE),cast(time2, DATE))
查询日期,但不返回任何数据(我确认必须有一些数据语句满足查询时间范围)
===========================================================================
from sqlalchemy import DATE
bb = "2021-10-11 12:21:23"
cc = "2021-10-17 16:12:34"
record = session.query(sa.Name cast(sa.FinishDate, DATE)).filter(
cast(sa.SamplingTime, DATE).between(cast(bb, DATE), cast(cc, DATE)),
sa.SamplingType != 0
).all()
或
record = session.query(sa.Name cast(sa.FinishDate, DATE)).filter(
cast(sa.SamplingTime, DATE)>= cast(bb, DATE),
sa.SamplingType != 0
).all()
两者都返回[]
我的代码有点问题,我不知道是什么问题
它对我有效,我只更改了你使用的日期
事实上,cast的第一个参数也可以是字符串,所以在本例中,可以在cast中以字符串形式传递日期
相关问题 更多 >
编程相关推荐