Oracle Union all bug

This commit is contained in:
sunkaixuan 2020-10-14 14:26:11 +08:00
parent d0d441912e
commit 78cf945954

View File

@ -467,8 +467,15 @@ namespace SqlSugar
var allParameters = allItems.SelectMany(it => it.Value).ToArray();
var resulut = this.Context.Queryable<ExpandoObject>().AS(UtilMethods.GetPackTable(allSql, "unionTable")).With(SqlWith.Null);
resulut.AddParameters(allParameters);
if (this.Context.CurrentConnectionConfig.DbType == DbType.Oracle && sqlBuilder.SqlSelectAll == "*")
{
return resulut.Select<T>("unionTable.*");
}
else
{
return resulut.Select<T>(sqlBuilder.SqlSelectAll);
}
}
public virtual ISugarQueryable<T> UnionAll<T>(List<ISugarQueryable<T>> queryables) where T : class, new()
{
Check.Exception(queryables.IsNullOrEmpty(), "UnionAll.queryables is null ");
@ -495,8 +502,15 @@ namespace SqlSugar
var allParameters = allItems.SelectMany(it => it.Value).ToArray();
var resulut = this.Context.Queryable<ExpandoObject>().AS(UtilMethods.GetPackTable(allSql, "unionTable")).With(SqlWith.Null);
resulut.AddParameters(allParameters);
if (this.Context.CurrentConnectionConfig.DbType == DbType.Oracle && sqlBuilder.SqlSelectAll == "*")
{
return resulut.Select<T>("unionTable.*");
}
else
{
return resulut.Select<T>(sqlBuilder.SqlSelectAll);
}
}
public virtual ISugarQueryable<T> Union<T>(List<ISugarQueryable<T>> queryables) where T : class, new()
{
Check.Exception(queryables.IsNullOrEmpty(), "Union.queryables is null ");