我很确定这里有个示例,因为我不知道确切的用语,所以我找不到它。所以,请客气。
这个问题应该是一个简单的问题:
我有一个Azure
SQL数据库,该数据库的设计有些错误(例如,缺少外键等)。由于此时我无法重新设计数据库,因此必须通过查询手动处理关系。由于数据库也是我们软件的瓶颈,因此我必须尝试以尽可能少的数据库命中来完成查询。
我有实体A,B,C和D。实体A有多个实体B(与未注册的外键连接),实体B有多个实体C,实体C有多个实体D。
我具有实体A的ID,并希望尽可能最佳地返回所有连接的实体直至Ds的树。
开始:
from A in dbA.Where(e=>e.Id==IDParameter)
join B in dbB on A.Id equals B.AId into Bs
现在,我需要对B中的每个B进行C转换,然后对C再次对D进行此转换。如果我按照ob脚的方式,先将Ds和Cs结合在一起,然后将Bs和Cs结合在一起,最后将As和Bs结合起来,这意味着将所有D与C结合起来,然后将所有……结合起来,直到我终于到达IDParameter过滤器为止。这似乎无效。
是否有在单个查询中执行此操作的正确C#方法?
您可以使用手动联接模拟定义关系后EF的功能。您所需要的只是使用Group Join和投影。像这样的东西:
var result =
(from a in db.A
where a.Id == IDParameter
join b in db.B on a.Id equals b.AId into Bs
select new
{
a,
Bs =
(from b in Bs
join c in db.C on b.Id equals c.BId into Cs
select new
{
b,
Cs =
(from c in Cs
join d in db.D on c.Id equals d.CId into Ds
select new
{
c,
Ds = Ds.ToList()
}).ToList()
}).ToList()
}).ToList();
我有3个表作为学生数据,包括学生的数据,科目表的数据提供的所有科目和分数,学生获得的每一个科目的分数。通过StudentId标记到StudentData表的表映射,通过SubjectId标记到Subjects表的表映射 我想做的是选择每个科目的最高分数和学生的名字,如下所示 所以我写了一个甲骨文PL / SQL查询如下, 但它只给出了一个结果。请帮助我开发一个查询来获取我的预期结果集。
我尝试在两个列表上循环,过滤嵌套列表,并使用java8特性将结果写回主对象。 因此,到目前为止,位置内部的子列表不会更改,这是显而易见的,因为流和收集确实会创建一个新列表,该列表不会写回位置对象中。所以我的问题是,如果有一种方法可以调用位置对象的setSubList(...)方法并将新列表写入其中。 感谢
问题内容: 我需要一个嵌套的django admin内联,可以将date字段内联包含在另一个内联中,如下所示。 我有以下模型: 和下面的管理员: 但是我需要将Training_Date模型作为内联包含在内,这是证书管理内联的一部分。 任何想法 ? 问题答案: AFAIK,默认Django管理员中不能包含第二级内联。 Django admin只是一个普通的Django应用程序,因此没有什么可以阻止您
我被困在将嵌套JS与宇宙数据库核心SQL API集成上。我知道有一个用于 Cosmos DB 的模块(https://github.com/nestjs/azure-database),但我需要数据架构来支持嵌套的 json,如下所示: 我认为@nestjs/azure-database不支持这一点(或者我可能错了),因为当我检查他们的示例和quickstart时,没有这样的json模式的示例。
我正在尝试使用 JOLT 转换 JSON。此 JSON 由嵌套数组组成,我无法获得正确的转换。 这是原始的JSON。请注意,总会有一个带有单个对象的“结果”数组。此对象将始终包含一个“行”数组。我想要行数组中每个元素的字段。 这是我写的规范: 预期的 JSON 是: 然而,我的规范返回以下输出: 水平可能有问题。但是我想不出来。有人能帮忙吗?