mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-04-29 10:49:36 +08:00
Add SqlFunc.WeekOfYear
This commit is contained in:
parent
c086b15839
commit
b313b3680e
@ -968,5 +968,11 @@ namespace SqlSugar
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
public virtual string WeekOfYear(MethodCallExpressionModel mode)
|
||||
{
|
||||
var parameterNameA = mode.Args[0].MemberName;
|
||||
return $" DATE_PART('week', {parameterNameA}) ";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -113,5 +113,6 @@ namespace SqlSugar
|
||||
string Modulo(MethodCallExpressionModel mode);
|
||||
string Like(MethodCallExpressionModel mode);
|
||||
string ToSingle(MethodCallExpressionModel mode);
|
||||
string WeekOfYear(MethodCallExpressionModel mode);
|
||||
}
|
||||
}
|
||||
|
@ -9,6 +9,10 @@ namespace SqlSugar
|
||||
{
|
||||
public partial class SqlFunc
|
||||
{
|
||||
public static int WeekOfYear(DateTime fieldName)
|
||||
{
|
||||
throw new NotSupportedException("Can only be used in expressions");
|
||||
}
|
||||
public static bool Like(string fieldName, string likeValue)
|
||||
{
|
||||
throw new NotSupportedException("Can only be used in expressions");
|
||||
|
@ -855,6 +855,10 @@ namespace SqlSugar
|
||||
case "ToSingle":
|
||||
return this.Context.DbMehtods.ToSingle(model);
|
||||
default:
|
||||
if (typeof(IDbMethods).GetMethods().Any(it => it.Name == name))
|
||||
{
|
||||
return this.Context.DbMehtods.GetType().GetMethod(name).Invoke(this.Context.DbMehtods,new object[] { model});
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -54,6 +54,11 @@ namespace SqlSugar
|
||||
}
|
||||
public partial class DmMethod : DefaultDbMethod, IDbMethods
|
||||
{
|
||||
public override string WeekOfYear(MethodCallExpressionModel mode)
|
||||
{
|
||||
var parameterNameA = mode.Args[0].MemberName;
|
||||
return $"TO_NUMBER(TO_CHAR({parameterNameA}, 'WW')) ";
|
||||
}
|
||||
public override string ParameterKeyWord { get; set; } = ":";
|
||||
public override string GetStringJoinSelector(string result, string separator)
|
||||
{
|
||||
|
@ -17,6 +17,11 @@ namespace SqlSugar
|
||||
}
|
||||
public class MySqlMethod : DefaultDbMethod, IDbMethods
|
||||
{
|
||||
public override string WeekOfYear(MethodCallExpressionModel mode)
|
||||
{
|
||||
var parameterNameA = mode.Args[0].MemberName;
|
||||
return $" WEEK({parameterNameA}) ";
|
||||
}
|
||||
public override string GetStringJoinSelector(string result, string separator)
|
||||
{
|
||||
return $"group_concat({result} separator '{separator}') ";
|
||||
|
@ -76,6 +76,11 @@ namespace SqlSugar
|
||||
}
|
||||
public partial class OracleMethod : DefaultDbMethod, IDbMethods
|
||||
{
|
||||
public override string WeekOfYear(MethodCallExpressionModel mode)
|
||||
{
|
||||
var parameterNameA = mode.Args[0].MemberName;
|
||||
return $"TO_NUMBER(TO_CHAR({parameterNameA}, 'WW')) ";
|
||||
}
|
||||
public override string BitwiseAnd(MethodCallExpressionModel model)
|
||||
{
|
||||
var parameter = model.Args[0];
|
||||
|
@ -20,6 +20,11 @@ namespace SqlSugar
|
||||
}
|
||||
public partial class SqlServerMethod : DefaultDbMethod, IDbMethods
|
||||
{
|
||||
public override string WeekOfYear(MethodCallExpressionModel mode)
|
||||
{
|
||||
var parameterNameA = mode.Args[0].MemberName;
|
||||
return $"DATEPART(WEEK, {parameterNameA}) ";
|
||||
}
|
||||
public override string GetTableWithDataBase(string dataBaseName, string tableName)
|
||||
{
|
||||
return $"{dataBaseName}.dbo.{tableName}";
|
||||
|
@ -17,6 +17,11 @@ namespace SqlSugar
|
||||
}
|
||||
public class SqliteMethod : DefaultDbMethod, IDbMethods
|
||||
{
|
||||
public override string WeekOfYear(MethodCallExpressionModel mode)
|
||||
{
|
||||
var parameterNameA = mode.Args[0].MemberName;
|
||||
return $"STRFTIME('%W', {parameterNameA}) ";
|
||||
}
|
||||
public override string Equals(MethodCallExpressionModel model)
|
||||
{
|
||||
var result= base.Equals(model);
|
||||
|
Loading…
Reference in New Issue
Block a user