我有一个APVendor
类,它有一个APInvoice
类的集合和一个唯一的Name
;每个APInvoice
有一个APPayment
类的集合。每个APPayment
对象完全参照一个BankAccount
类,ClearedDate
,Amount
和CheckNumber
属性。有效的复杂NHibernate标准查询
与已检查记录中的银行对账单,让我们说我银行美孚支票帐户,检查,为$ 1000.00包装量,我想看看我的持久层存在支付,并标记APPayment
对象的ClearedDate
属性。
我可以通过查询供应商,然后查询供应商的发票,然后找书面反对BankAccount
是支票号码做到这一点,但我敢肯定有一个更有效的方式来写这个作为一个Criteria
查询。
有人可以帮我看看应该怎么看?这是我会怎么写SQL查询来获取对象图,我需要一起工作:
select p.*, i.*, v.*
from appayments p
join bankaccounts a on p.bankaccountid = a.bankaccountid
join apinvoices i on i.invoiceid = p.invoiceid
join apvendors v on v.vendorid = i.vendorid
where a.bankaccountid = ????
and p.checknumber = ????
你究竟在寻找什么?具有给定CheckNumber和给定金额的APPayment?任何其他限制?试着用英语表达你的查询,然后HQL查询将会出现。 –
@JBNizet,我用SQL表达了我想要的东西......似乎比英语更容易解释。是否有意义? –