при условии, что мои настройки
Teachers (id, name)
Students (id, name, teacher [FK]);
как выбрать учителей DQL, у которых есть ученики?Я думаю, это будет что-то вроде
select t FROM Entities\Teachers t WHERE count(t.students) > 0
, но я знаю, count(t.students) > 0
неправильно ... что я тогда использую?
ОБНОВЛЕНИЕ
что сейчасмного-много самореферентных отношений?где пользователь может быть учителем или учеником или и тем, и другим ... код ниже ... что такое DQL для получения пользователей, у которых есть ученики?
/** @Entity @Table(name="users")) */
class User {
/**
* @Id @Column(type="integer")
* @GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @Column(type="string", length="30")
*/
private $name;
/**
* @ManyToMany(targetEntity="User", inversedBy="teachers")
* @JoinTable(name="Teachers_Students",
* joinColumns={@JoinColumn(name="teacher", referencedColumnName="id")},
* inverseJoinColumns={@JoinColumn(name="student", referencedColumnName="id")}
* )
*/
private $students;
/**
* @ManyToMany(targetEntity="User", mappedBy="students")
*/
private $teachers;