Php 多查询

Php 多查询,php,mysql,doctrine,symfony-3.3,Php,Mysql,Doctrine,Symfony 3.3,我正在尝试执行一个多对多查询 这个MySQL查询正好提供了我想要的: select * from service_offer left join service on service.id_service = service_offer.id_service left join user on user.id_user = service_offer.id_user 我该怎么处理Symfony 我试过这样的方法: public function findAllServiceOffers(){

我正在尝试执行一个多对多查询

这个MySQL查询正好提供了我想要的:

select * from service_offer 
left join service on service.id_service = service_offer.id_service
left join user on user.id_user = service_offer.id_user
我该怎么处理Symfony

我试过这样的方法:

public function findAllServiceOffers(){
    $query = $this->getEntityManager()
        ->createQuery(
        'SELECT s, u FROM AppBundle:Service s
        INNER JOIN AppBundle:User u'
    );

    try {
        return $query->getResult();
    } catch (\Doctrine\ORM\NoResultException $e) {
        return null;
    }
}
但我有一个错误:

[语法错误]第0行,第1列:错误:预期的条令\ORM\Query\Lexer::T_WITH,获取字符串结尾

如果我添加WHERE或WITH子句,查询将执行,但我有空值


提前感谢。

我将很快给你举两个例子:

//use Doctrine\DBAL\Connection;

/** @var Connection $conn */
$conn = $this->getDoctrine()->getConnection();
$aResults = $conn->executeQuery($sql)->fetchAll();


谢谢但是我不想使用“service\u offer”表,它是服务和用户之间的关系。我应该能够只使用服务和用户,不是吗?对不起,但是关系是什么(没有表服务提供)?表服务提供存在,并且服务和用户之间没有关系。但是在Symfony,我不应该提到这个服务提供表。或条令应该可以找到这个表和我做的注释。。。
//use Doctrine\DBAL\Connection;

/** @var Connection $conn */
$conn = $this->getDoctrine()->getConnection();
$query = $conn->createQueryBuilder()->select('fields')->from('table1','alias_table1');
$query->leftJoin('alias_table1','table2','alias_table2','alias_table1.ID = alias_table2.ID');
$aResults = $query->execute()->fetchAll();
//use Doctrine\ORM\EntityManager;
/** @var EntityManager $em */
$em = $this->getDoctrine()->getManager();
$sSQL = $em->createQuery("SELECT t1,t2 FROM YourBundle:Table1 t1 LEFT JOIN t1.fieldOfEntityDoctrine t2 WHERE t2.ID = 'example'")->getSQL();