mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-04-22 10:42:52 +08:00
- 增加 SqlExt.IsNull 方法;
This commit is contained in:
parent
24e0fcd0af
commit
8200b0e2e0
@ -532,5 +532,14 @@
|
||||
<param name="that"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Extensions.DependencyInjection.FreeSqlRepositoryDependencyInjection.AddFreeRepository(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action{FreeSql.FluentDataFilter},System.Reflection.Assembly[])">
|
||||
<summary>
|
||||
批量注入 Repository,可以参考代码自行调整
|
||||
</summary>
|
||||
<param name="services"></param>
|
||||
<param name="globalDataFilter"></param>
|
||||
<param name="assemblies"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
|
@ -233,6 +233,12 @@ namespace FreeSql.Tests
|
||||
EdiId2 = SqlExt.Max(a.Key).Over().PartitionBy(a.Value.EdiId).OrderByDescending(a.Value.Id).ToValue(),
|
||||
});
|
||||
|
||||
var sqlextIsNull = g.sqlserver.Select<EdiItem>()
|
||||
.ToSql(a => new
|
||||
{
|
||||
nvl = SqlExt.IsNull(a.EdiId, 0)
|
||||
});
|
||||
|
||||
var sqlextGroupConcat = g.mysql.Select<Edi, EdiItem>()
|
||||
.InnerJoin((a, b) => b.Id == a.Id)
|
||||
.ToSql((a, b) => new
|
||||
|
@ -104,6 +104,19 @@ namespace FreeSql
|
||||
public static ISqlOver<long> RowNumber() => Over<long>("row_number()");
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// isnull、ifnull、coalesce、nvl
|
||||
/// </summary>
|
||||
/// <typeparam name="TValue"></typeparam>
|
||||
/// <param name="value"></param>
|
||||
/// <param name="defaultValue"></param>
|
||||
/// <returns></returns>
|
||||
public static TValue IsNull<TValue>(TValue value, TValue defaultValue)
|
||||
{
|
||||
expContext.Value.Result = expContext.Value._commonExp._common.IsNull(expContext.Value.ParsedContent["value"], expContext.Value.ParsedContent["defaultValue"]);
|
||||
return default(TValue);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// case when .. then .. end
|
||||
/// </summary>
|
||||
@ -311,7 +324,7 @@ namespace FreeSql
|
||||
public interface IGroupConcat { }
|
||||
#endregion
|
||||
|
||||
#region string.Join 反射处理,此块代卖用于反射,所以别修改定义
|
||||
#region string.Join 反射处理,此块代码用于反射,所以别修改定义
|
||||
public static string StringJoinSqliteGroupConcat(object column, object delimiter)
|
||||
{
|
||||
expContext.Result = $"group_concat({expContext.ParsedContent["column"]},{expContext.ParsedContent["delimiter"]})";
|
||||
|
@ -1103,6 +1103,15 @@
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:FreeSql.SqlExt.IsNull``1(``0,``0)">
|
||||
<summary>
|
||||
isnull、ifnull、coalesce、nvl
|
||||
</summary>
|
||||
<typeparam name="TValue"></typeparam>
|
||||
<param name="value"></param>
|
||||
<param name="defaultValue"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:FreeSql.SqlExt.Case">
|
||||
<summary>
|
||||
case when .. then .. end
|
||||
|
Loading…
x
Reference in New Issue
Block a user