【发布时间】:2015-01-31 02:08:23
【问题描述】:
鉴于以下实体,有人可以帮助我了解如何编写与以下 SQL 等效的 DQL 吗?我似乎找不到一个很好的 DQL 子查询示例,它可以转换为数据透视表上的选择。谢谢!
select *
from event a
where exists (
select *
from event_category b
where b.event_id = a.id
and b.category_id = 1
)
实体:
/**
* @Entity
* @Table(name="event")
*/
class Event
{
/**
* @Column(type="integer")
* @Id
*/
protected $id;
/**
* @JoinTable(
* inverseJoinColumns={
* @JoinColumn(name="category_id", referencedColumnName="id")
* },
* joinColumns={
* @JoinColumn(name="event_id", referencedColumnName="id")
* },
* name="event_category"
* )
* @ManyToMany(targetEntity="Category")
*/
protected $categories;
}
/**
* @Entity
* @Table(name="category")
*/
class Category
{
/**
* @Column(type="integer")
* @Id
*/
protected $id;
}
【问题讨论】:
标签: doctrine-orm doctrine dql doctrine-query