假设我们使用像Doctrine和Symfony2这样的ORM作为框架。
以这种方式有三个实体(A,B,C)相关的eache:
A --[1-m]-- B
B --[m-1]-- C
现在让我们说C
有一个属性(表格列)告诉我们C
记录的正确顺序(出于用户显示目的)。
最后,我们使用ORM获取了A
类型的对象。
对于从C
开始订购的返回A
对象,最佳方法(如果有)是什么?我是否要编写自定义查询,以及丢失ORM特征?
如果您没有遇到问题,请记住,对于检索C
对象,您必须传递B
个对象,这些对象可以按照订单字段{{{ 1}}对象,当然,“复制”顺序也是C
对象不是一个好的解决方案
答案 0 :(得分:0)
SELECT a, b, c
FROM Mapping:EntityA a
JOIN a.b b
JOIN b.c c
ORDER BY b.prop1 ASC, c.prop1 ASC
这就是真的。属于c's
的所有b
都是有序的,而属于b's
的所有a
也是有序的。