mysql support datediff

This commit is contained in:
sunkaixuan 2022-03-22 20:20:50 +08:00
parent 2b9ddb63df
commit 43f7af4a4b
2 changed files with 8 additions and 0 deletions

View File

@ -86,6 +86,7 @@ namespace OrmTest
var test05 = db.Queryable<Order>().Where(it => it.CreateTime.Month == dp.Month).ToList(); var test05 = db.Queryable<Order>().Where(it => it.CreateTime.Month == dp.Month).ToList();
var fromatList = db.Queryable<Order>().Select(it => it.CreateTime.ToString("%Y-%m")).ToList(); var fromatList = db.Queryable<Order>().Select(it => it.CreateTime.ToString("%Y-%m")).ToList();
var test06 = db.Queryable<Order>().Where(it => it.CreateTime.Date.Day >= DateTime.Now.Date.Day).ToList(); var test06 = db.Queryable<Order>().Where(it => it.CreateTime.Date.Day >= DateTime.Now.Date.Day).ToList();
var test07 = db.Queryable<Order>().Select(it => SqlFunc.DateDiff(DateType.Day, Convert.ToDateTime("2021-1-1"), Convert.ToDateTime("2021-1-12"))).ToList();
Console.WriteLine("#### Examples End ####"); Console.WriteLine("#### Examples End ####");
} }

View File

@ -14,6 +14,13 @@ namespace SqlSugar
} }
public class MySqlMethod : DefaultDbMethod, IDbMethods public class MySqlMethod : DefaultDbMethod, IDbMethods
{ {
public override string DateDiff(MethodCallExpressionModel model)
{
var parameter = model.Args[0];
var parameter2 = model.Args[1];
var parameter3 = model.Args[2];
return string.Format(" TIMESTAMPDIFF({0},{1},{2}) ", parameter.MemberValue?.ToString().ToSqlFilter(), parameter2.MemberName, parameter3.MemberName);
}
public override string DateValue(MethodCallExpressionModel model) public override string DateValue(MethodCallExpressionModel model)
{ {
var parameter = model.Args[0]; var parameter = model.Args[0];