【问题标题】:How to use Hibernate Criteria order by with associate tables?如何将 Hibernate Criteria order by 与关联表一起使用?
【发布时间】:2014-08-27 08:33:11
【问题描述】:

我有 3 张桌子。

Table A - pk_id, FK_B_Id(foreign key of Table B),...
Table B - pk_id, name....
Table C - pk_id, FK_A_Id(foreign key of Table A), name...

我正在获取基于 Table A 的搜索结果。在表 A 中记录与表 B 或表 c 相关联。在结果集中,我显示 name。如何根据名称对搜索结果进行排序?

【问题讨论】:

    标签: sql hibernate hibernate-criteria


    【解决方案1】:

    我可以找到解决我的问题的方法,我想与大家分享。

    我在表 A hbm.xml 文件中添加了一个带有公式的新属性(“名称”)。然后使用这个属性进行排序。

    这是我添加到表 A hbm 文件中的属性。

    <property name="name" formula="(SELECT COALESCE((SELECT t.NAME FROM TABLE_B t WHERE t.PK_ID = FK_TABLE_A),(SELECT n.NAME FROM TABLE_C n WHERE n.FK_TABLE_A=PK_ID) ,'') FROM DUAL)"/>
    

    【讨论】:

      猜你喜欢
      • 2013-11-11
      • 1970-01-01
      • 2023-03-23
      • 2017-02-16
      • 2013-04-30
      • 1970-01-01
      • 2010-11-21
      • 2015-09-11
      • 2010-12-19
      相关资源
      最近更新 更多