我想有效地添加一个计算列,它将另一个表中选定行的列相加。我需要快速检索和搜索计算列中的值,而无需重新计算总和。
我想添加的计算列在 Dream-SQL 中如下所示:
ALTER TABLE Invoices ADD Balance
AS SUM(Transactions.Amount) WHERE Transactions.InvoiceId = Invoices.Id
当然,这是行不通的。我的理解是您不能添加引用另一个表的计算列。但是,索引视图似乎可以包含这样的列。
该项目基于实体框架代码优先。应用程序需要快速找到非零余额。
假设索引视图是要走的路,将其与 Invoices 和 Transactions 表集成以使其易于与 LINQ to Entities 一起使用的最佳方法是什么?索引视图应该包含 Invoices 表中的所有列还是仅包含 Balance(持久化的内容)?用于创建推荐视图和索引的 SQL 代码片段会很有帮助。