From 1266a3f3dbb274a8c35683cfee342f2f7cd3fe82 Mon Sep 17 00:00:00 2001 From: sunkaixuna <610262374@qq.com> Date: Thu, 2 Dec 2021 20:00:19 +0800 Subject: [PATCH] Time function optimization --- .../ResolveItems/MethodCallExpressionResolve.cs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Src/Asp.Net/SqlSugar/ExpressionsToSql/ResolveItems/MethodCallExpressionResolve.cs b/Src/Asp.Net/SqlSugar/ExpressionsToSql/ResolveItems/MethodCallExpressionResolve.cs index d2780ad16..a37abb779 100644 --- a/Src/Asp.Net/SqlSugar/ExpressionsToSql/ResolveItems/MethodCallExpressionResolve.cs +++ b/Src/Asp.Net/SqlSugar/ExpressionsToSql/ResolveItems/MethodCallExpressionResolve.cs @@ -878,6 +878,22 @@ namespace SqlSugar public string GeDateFormat(string formatString, string value) { + if (formatString == "yyyy-MM-dd"&&IsSqlServer()) + { + return $"CONVERT(varchar(100),convert(datetime,{value}), 23)"; + } + else if (formatString == "yyyy-MM-dd HH:mm:ss" && IsSqlServer()) + { + return $"CONVERT(varchar(100),convert(datetime,{value}), 120)"; + } + else if (formatString == "yyyy-MM-dd hh:mm:ss" && IsSqlServer()) + { + return $"CONVERT(varchar(100),convert(datetime,{value}), 120)"; + } + else if (formatString == "yyyy-MM-dd hh:mm:ss.ms" && IsSqlServer()) + { + return $"CONVERT(varchar(100),convert(datetime,{value}), 121)"; + } var parameter = new MethodCallExpressionArgs() { IsMember = true, MemberValue = DateType.Year }; var parameter2 = new MethodCallExpressionArgs() { IsMember = true, MemberName = value }; var parameters = new MethodCallExpressionModel() { Args = new List() { parameter2, parameter } };