Subsonic 如何通过亚音速使用分区和列组功能

Subsonic 如何通过亚音速使用分区和列组功能,subsonic,rank,database-partitioning,Subsonic,Rank,Database Partitioning,如何使用亚音速编写查询或lambda表达式,并使用以下通过SQL SERVER轻松完成的函数 在条件中使用分区和等级 这是我想通过亚音速转换的查询 从中选择* 选择H.location\u id.L.item\u id作为采购订单项,H.po\u no,H.order\u date,H.created\u by, 按H.location\U id、L.item\U id按H.location\U id、L.item\U id、H.ORDER\U date DESC排序 从p21\U视图\U po

如何使用亚音速编写查询或lambda表达式,并使用以下通过SQL SERVER轻松完成的函数

在条件中使用分区和等级

这是我想通过亚音速转换的查询

从中选择* 选择H.location\u id.L.item\u id作为采购订单项,H.po\u no,H.order\u date,H.created\u by, 按H.location\U id、L.item\U id按H.location\U id、L.item\U id、H.ORDER\U date DESC排序 从p21\U视图\U po\U hdr H内部连接p21\U视图\U po\U线L 关于H.po_no=L.po_no tmp


我从以下有用的链接中找到了答案: 及

在LINQ中,使用let关键字可以获得类似的结果。下面是一个例子:

1
2
3
4
5
6
7
8

from p in PersonOrders
//where conditions or joins with other tables to be included here
group p by p.PersonID into grp
let MaxOrderDatePerPerson = grp.Max ( g=>g.OrderDate )

from p in grp
where p.OrderDate == MaxOrderDatePerPerson
select p

亚音速所做的是从强类型变量创建一个sql代码,以避免开发过程中的错误,并使编写sql代码更加容易。但是如果你知道你在sql上做了什么,保持sql的原样,使用亚音速的直接sql命令。到目前为止,我还不能在亚音速中找到分区和秩函数。