【发布时间】:2010-05-27 22:37:44
【问题描述】:
我将 NHibernate 与 Lambda 扩展一起使用。我想知道如何用 Substring 嵌套 Max 函数。
以下语句检索Max("invoice_id")
var ret = session
.CreateCriteria<Invoice>()
.SetProjection(Projections.Max("invoice_id"))
.UniqueResult();
但在我的例子中,invoice_id 字段是这样生成的:12345.10,其中 12345 是发票编号,10 是指当前年份(2010 年)。此外,每年发票编号从 1 重新开始。 所以我只需要计算前 5 位的 Max 函数。我该怎么做?
【问题讨论】:
-
这有关系吗?无论如何,最大值不会相同吗? (即 12345#### vs 12346####,无论最后是什么 4 位数年份,后者仍然是最大值)
-
当然可以,但是发票编号每年都会从 1 重新开始。对不起,我之前忘记指定了..
-
现在更有意义了。 :)
标签: c# nhibernate criteria nhlambdaextensions