你用C#算出三个月前的时间, 再linq其实不算笨。
我是截取数据库里字段里面的月,再去当前时间的,相减看大不大于3,是很笨
而且,如果是1、2月份也不好搞的
@琹。: 不用这样啊。 你用DateTime.Now.AddMonth(-3)拿出个三个月前的时间,
比这个大, 比现在小, 就行了。
@undefined: 关键就是大小比较的SQL语句吧?不管是传当前时间还是三个月之前的时间,到SQL语句这一层都是要进行时间的大小比较,她认为她现在的比较方式不科学。
@飞扬的尘埃: 看来我又想复杂了
自己计算出时间,然后用大于小于来判断,不要在字段上运算
是的,谢谢
直接给两个时间区间即可!
var start=DateTime.Parse(DateTime.Now.AddMonth(-3).ToString("yyyy-MM-dd"));
var end=DateTime.Parse(DateTime.Now.AddDays(1).ToString("yyyy-MM-dd"));
ctx.Tables.Where(t=>t.CreateTime>=start && t.CreateTime<=end)
这样做可以搞定的。
3q,已解决