在使用EF時,想要比較字符串類型的日期時

原文地址(https://blog.csdn.net/yangxinyue315/article/details/44960895)sql

在使用EF時,想要比較字符串類型的日期時

在使用EF時,想要比較字符串類型的日期時,參考如下:json

SQL語句:markdown

1)select * from TableName where StartTime > ‘2015-04-08’ 
2)select * from TableName where StartTime >= ‘2015-04-08’ 
3)select * from TableName where StartTime < ‘2015-04-08’ 
4)select * from TableName where StartTime <= ‘2015-04-08’ 
lambda表達式寫法:mvc

1).Where(a => a.StartTime.CompareTo(‘2015-04-08’) > 0) 
2).Where(a => a.StartTime.CompareTo(‘2015-04-08’) >= 0) 
3).Where(a => a.StartTime.CompareTo(‘2015-04-08’) < 0) 
4).Where(a => a.StartTime.CompareTo(‘2015-04-08’) <= 0) 
更規範的寫法:sqlserver

1).Where(a => String.Compare(a.StartTime, ‘2015-04-08’, StringComparison.Ordinal) > 0) 
2).Where(a => String.Compare(a.StartTime, ‘2015-04-08’, StringComparison.Ordinal) >= 0) 
3).Where(a => String.Compare(a.StartTime, ‘2015-04-08’, StringComparison.Ordinal) < 0) 
4).Where(a => String.Compare(a.StartTime, ‘2015-04-08’, StringComparison.Ordinal) <= 0)post

(sqlserver和ef在日期datetime類型上面坑仍是比較多(好比mvc返回json結果時,會自動把日期類型轉化爲時間戳,好比sqlserver比較datetime類型的大小要比varchar類型複雜),實際使用時,日期類型使用varachar不失爲一個好的選擇)
相關文章
相關標籤/搜索