表table: fid value1, sid, value2
fid和sid都是同一个表的外键
不用concat 如何查询出结果:
new {
id = 13,
value = 999
}
相当于:
fid, value1
sid, value2
思路:
先取fid,value1,得到list1;
再取sid,value2,得到list2;
然后将list2 加到list1 里面,得到list1;
在list1中根据ID分组,用聚合函数得到value,即可。
现在我是这样做的,数据多了就好慢,不只是这两个字段, 有7,8个类似fid,要list.concat()7,8次
@然然爹的记忆: 这样啊,那你就用procedure吧,会快一些。
这要基于Entity Framework中映射关系的定义
我是用的ef
表里面的记录是
fid value1, sid, value2
13 99 14 5
13 47 15 2
现在要生成报表
id value
13, (99+47)
14, 5
15, 2