你好
在数据库中,我们有一个 PRSN_ADDRESS 表,其中包含许多地址。用户会在网格中看到这些地址。要求是首先显示与该用户的状态关联的地址,然后显示所有其他状态。
例如,假设该表有 10 条记录,其中 5 个地址的州为马里兰州,2 个来自宾夕法尼亚州,3 个来自新泽西州。现在,如果用户与马里兰州关联,我们需要显示所有 10 个地址,但马里兰州地址应按任意顺序显示在前 5 个地址中,然后显示其他 5 个地址。
我们正在使用 Hibernate Criteria。我没有研究过公式,不确定这是否有助于解决问题。如果有人能指出我正确的方向,那就太好了。我很感激。
Thanks
Harish
您可以按条件值订购...
(NHibernate 方式,有人知道 Hibernate 中的等效方式吗?)
.AddOrder(Order.Asc(
Projections.Conditional(
Restrictions.EqProperty("addr.state", "user.state"), Projections.Constant(0), Projections.Constant(1))))
.AddOrder(Order.Asc("addr.state"))
翻译为...
order by
case when addr.state = user.state then 0 else 1 end,
addr.state
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)