Php 命令与条令联接表
我用条令写了一个查询,在这里我加入了水果和维生素表 我已经按名称ASC对维生素进行了排序,但我需要对联接表执行相同的操作 我试过了 addOrderBy() ,但是运气不好 注:'c'是维生素表 所有的东西都按原样退了,除了水果没有定单就退了 我的代码:Php 命令与条令联接表,php,mysql,symfony,doctrine-orm,doctrine,Php,Mysql,Symfony,Doctrine Orm,Doctrine,我用条令写了一个查询,在这里我加入了水果和维生素表 我已经按名称ASC对维生素进行了排序,但我需要对联接表执行相同的操作 我试过了 addOrderBy() ,但是运气不好 注:'c'是维生素表 所有的东西都按原样退了,除了水果没有定单就退了 我的代码: $queryBuilder = $this->createQueryBuilder('c') ->select('c', 'ct.name AS fruitName', 'ct.id AS fruitId')
$queryBuilder = $this->createQueryBuilder('c')
->select('c', 'ct.name AS fruitName', 'ct.id AS fruitId')
->join('App\Entity\Fruits', 'ct', Expr\Join::WITH, 'ct.id = c.fruitName')
->orderBy('c.name');
$fruits = $queryBuilder->getQuery()->getResult();
$structure = [];
foreach ($fruits as $fruit) {
$structure[$fruit['fruitName']][] = $fruit[0];
}
return $structure;
请尝试以下方法之一:
选项1:
$qb->orderBy('c.name ASC, ct.name ASC');
$qb->addOrderBy('c.name', 'ASC')
->addOrderBy('ct.name', 'ASC')
选项2:
$qb->orderBy('c.name ASC, ct.name ASC');
$qb->addOrderBy('c.name', 'ASC')
->addOrderBy('ct.name', 'ASC')
$fruits
的订购方式是否正确?