我有一个带有ArrayCollection字段的实体。在我可以写的注释中
@ORM\OrderBy({"somefield" = "DESC"})
我将从该实体获得的集合将自动订购。
我的问题是,是否可以按汇总字段订购?
我当前的问题:我在集合实体中有两个字段:visited
和shown
,我想按评级索引对集合进行排序,即:visited / shown
。我试着在注释中写它,但它说它应该是一个有效的字段。我知道如何使用DQL执行此操作,但我不知道如何使用注释在Entity的声明中重新创建它。
提前致谢!
答案 0 :(得分:3)
不太确定我是否理解你的问题。但是
是什么 @ORM/OrderBy({"visited" = "DESC", "shown" = "DESC"})
给出结果?
OrderBy中的DQL代码段只允许由不合格的,不带引号的字段名称和可选的ASC / DESC位置语句组成。多个字段用逗号(,)分隔。引用的字段名称必须存在于@ManyToMany或@OneToMany批注的targetEntity类中。
答案 1 :(得分:1)
您需要在ORDER BY语句中进行数学运算 - 在SQL中,它将是ORDER BY访问/显示的DESC。我认为在注释中做不可能。