доктрина 2 упорядочена по ассоциативным таблицам - PullRequest
0 голосов
/ 17 ноября 2010

У меня есть две сущности доктрины «Пользователь» и «Атрибут», показанные ниже.Мне нужно построить запрос, который будет извлекать всех пользователей и упорядочивать их по имени атрибута, где атрибут type = x.Например, получить всех пользователей и упорядочить их по названию.

SELECT u FROM User u JOIN u.attributes a ORDER BY a.name {something??} a.type = 'title'


class User {

    /**
     * @ManyToMany (targetEntity="Attribute", inversedBy="users", cascade={"persist"})
     * 
     */
    private $attributes;
}



class Attribute {

    /**
     * @Column (type="string", length=255, unique=false, nullable=false, name="name")
     * @FormElement (type="text")
     * @type string
     */
    protected $name;

    /**
     * @Column (type="string", unique=false, nullable=true, name="type")
     * @type string
     */
    private $type;

    /**
     * @Column (type="integer", length=11, unique=false, nullable=true, name="priority")
     * @type integer
     */
    private $priority;

    /**
     * @ManyToMany (targetEntity="User", mappedBy="attributes")
     */
    private $users;

}

1 Ответ

0 голосов
/ 17 ноября 2010

Я думаю, что этот запрос - то, что вы ищете:

SELECT u FROM User u JOIN u.attributes a WHERE a.type = 'title' ORDER BY a.name ASC
...