對年 月 日時間型別進行比較

2022-02-26 00:53:49 字數 1394 閱讀 8414

由於業務要求,需要新增查詢,而查詢的時間格式為「2018-05-13」;資料庫的時間格式為「2018-05-10 17:32:31」

var entity = context.infomations.oftype().where(f =>(!param.typeid.hasvalue || f.typeid == param.typeid)                  //

docments模型繼承於infomations

&& (string.isnullorempty(param.title) ||f.title.contains(param.title))

&& (!param.level.hasvalue || f.level ==param.level)

&& (!param.isvalid.hasvalue || f.ispublish ==param.isvalid)

&& (!param.begintime.hasvalue || f.createtime >=param.begintime)

&& (!param.endtime.hasvalue || f.createtime <= param.endtime)).orderbydescending(f =>f.createtime).tolist();

這裡存在乙個問題,就是當開始時間和結束時間選擇同一天時,篩選不出來。如選擇2018-05-08,這時開始時間和結束時間均為「2018-05-08 00:00:00」,這只能取出建立時間為「2018-05-08 00:00:00」的資料,而不是這一天的資料;

param.endtime = param.endtime.value.adddays(1);
時間範圍變成:「2018-05-08 00:00:00」----「2018-05-09 00:00:00」

方案二:將開始時間和結束時間進行字串拼接成(「2018-05-08 00:00:00」----「2018-05-09 23:59:59」),再轉為時間型別進行比較

string starttimestr = datetime.now.tostring("

yyyy-mm-dd

") + "

00:00:00";

datetime starttime =datetime.parse(starttimestr);

string endtimestr = datetime.now.tostring("

yyyy-mm-dd

") + "

23:59:59";

datetime endtime =datetime.parse(endtimestr);

console.writeline(starttime);

console.writeline(endtime);

Java Calendar獲取年 月 日 時間

calendar c calendar.getinstance timezone.gettimezone gmt 08 00 獲取東八區時間 int year c.get calendar.year 獲取年 int month c.get calendar.month 1 獲取月份,0表示1月份 i...

Calendar獲取年 月 日 時間

calendar c calendar.getinstance timezone.gettimezone gmt 08 00 獲取東八區時間 int year c.get calendar.year 獲取年 int month c.get calendar.month 1 獲取月份,0表示1月份 i...

Lua時間處理(獲取年月日 時間比較 格式轉換等)

獲取年月日等 轉成年月日介面 function formatunixtime2date unixtime if unixtime and unixtime 0 then local tb tb.year tonumber os.date y unixtime tb.month tonumber os...