【发布时间】:2012-07-19 11:49:25
【问题描述】:
我需要按两列对数据进行排序(当行的第 1 列的值不同时,按它排序;否则,按第 2 列排序)
我使用QueryBuilder 来创建查询。
如果我第二次调用orderBy 方法,它会替换任何之前指定的排序。
我可以传递两列作为第一个参数:
->orderBy('r.firstColumn, r.secondColumn', 'DESC');
但是我不能为第二个参数传递两个排序方向,所以当我执行这个查询时,第一列按升序排序,第二列按降序排序。我想对它们都使用降序。
有没有办法使用QueryBuilder 做到这一点?我需要使用 DQL 吗?
【问题讨论】:
标签: php doctrine sql-order-by