How to perform this query in dql or querybuilder

0

How to perform this query on dql or querybuilder ?

select m.id, m.nombre, c.id, c.nombre from miembro as m
 inner join (
  select cmi.id_cargo, cmi.id_miembro, cmi.id from cargo__miembro as cmi
  inner join (
   select muc.id as idmiembro, Max(cmuc.id) as uid from miembro as muc 
   inner join cargo__miembro as cmuc on muc.id = cmuc.id_miembro
   inner join cargo as c1 on cmuc.id_cargo = c1.id
   group by muc.id
  )  as cm WHERE cmi.id = cm.uid
 )  as cm on m.id = cm.id_miembro
 inner join cargo as c on cm.id_cargo = c.id

I'm using symfony 3

    
asked by Jesús Soto Mitjans 26.06.2018 в 18:50
source

1 answer

0

There are certain queries that you simply will not be able to do with DQL or QueryBuilder (at least not, as far as I know). My recommendation is to make it as it is, that is:

$em = $this->getDoctrine()->getManager();
$conn = $em->getConnection();
$query = "[colocas aqui tu query]";
$consulta = $conn->prepare($query);
$consulta->execute(); 
$queryResults = $consulta->fetchAll();

With this you could already display the result with a foreach in your view.

    
answered by 28.06.2018 в 19:23