我偶然发现this site关于实体框架(核心)的限制,说明只能选择模型类所代表的数据。
现在我想实现一些基本的东西,比如统计数据,包含多个表中的多个字段和多个字段的数量。目前我正在使用多个选择(每个表中每个字段一个),这不是最佳选择,因为统计信息放在每个页面上,因此经常查询。
我创建了以下SQL语句,该语句通过一次调用查询结果,但我无法从MVC控制器中执行它并将其返回。
SELECT
SUM(CASE WHEN temp.val1 = 1 THEN 1 ELSE 0 END) res1,
SUM(CASE WHEN temp.val1 = 2 THEN 1 ELSE 0 END) res2,
SUM(temp.valT) res3
FROM (
SELECT x.Field1 AS val1, x.Field2 AS valT FROM Table1 x
UNION ALL
SELECT 0 AS val1, y.Field2 AS valT FROM Table2 y
UNION ALL
SELECT 0 AS val1, z.Field2 AS valT FROM Table3 z
) temp