SQL 中有这方面的例子,我理解它们,但我似乎无法在 Linq-SQL 中围绕它。
Accounts 中有两个表,'Accounts' 和 'AccountTransactions' 由 Accounts 中的主键关联,即令人惊讶的是 AccountID。
我需要选择每个帐户行和 1 个最近的(按降序排列时为前 1 个)子 AccountTransaction。
我试图破解我发现的一些例子,但没有运气(我猜只是没有得到它)......
任何帮助表示赞赏...
SQL 中有这方面的例子,我理解它们,但我似乎无法在 Linq-SQL 中围绕它。
Accounts 中有两个表,'Accounts' 和 'AccountTransactions' 由 Accounts 中的主键关联,即令人惊讶的是 AccountID。
我需要选择每个帐户行和 1 个最近的(按降序排列时为前 1 个)子 AccountTransaction。
我试图破解我发现的一些例子,但没有运气(我猜只是没有得到它)......
任何帮助表示赞赏...
这是一种可能的解决方案;它不漂亮,但它应该可以工作:
from account in Accounts
select new
{account.Name, account.Whatever,
LastTransaction =
account.AccountTransactions.OrderByDescending(t => t.Date).First()};
这将选择所有帐户,如果 AccountTransactions 表具有 AccountID 作为外键,则将自动执行连接。您需要做的就是获取帐户所需的详细信息并获取按日期排序的最新交易。
在我的情况下工作正常......
希望它会帮助别人。