diff --git a/Src/Asp.NetCore2/SqlSugar/ExpressionsToSql/ResolveItems/MethodCallExpressionResolve_BaseDateFomat.cs b/Src/Asp.NetCore2/SqlSugar/ExpressionsToSql/ResolveItems/MethodCallExpressionResolve_BaseDateFomat.cs index 9afa7d120..47f1c1080 100644 --- a/Src/Asp.NetCore2/SqlSugar/ExpressionsToSql/ResolveItems/MethodCallExpressionResolve_BaseDateFomat.cs +++ b/Src/Asp.NetCore2/SqlSugar/ExpressionsToSql/ResolveItems/MethodCallExpressionResolve_BaseDateFomat.cs @@ -131,6 +131,36 @@ namespace SqlSugar { return string.Format("FORMAT({0},'{1}','en-US')", value, formatString); } + else if (IsMySql()&& !formatString.Contains("%")) + { + var newFormt = formatString + .Replace("yyyy", "%Y") + .Replace("yy", "%Y") + .Replace("MM", "%m") + .Replace("M", "%m") + .Replace("dd", "%d") + .Replace("HH", "%H") + .Replace("hh", "%h") + .Replace("mm", "%i") + .Replace("ss", "%s") + .Replace("fff", "%f"); + return $"DATE_FORMAT({value}, '{newFormt}')"; + } + else if (IsSqlite() && !formatString.Contains("%")) + { + var newFormt = formatString + .Replace("yyyy", "%Y") + .Replace("yy", "%Y") + .Replace("MM", "%m") + .Replace("M", "%m") + .Replace("dd", "%d") + .Replace("HH", "%H") + .Replace("hh", "%h") + .Replace("mm", "%M") + .Replace("ss", "%S") + .Replace("fff", "%f"); + return $"strftime('{newFormt}',{value})"; + } 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 } };