Question

I am developing an application using Symfony2 and Doctrine2. I also use Doctrine's QueryBuilder. I have this query:

public function getInterpDesberdinak($MarkId)
    {
          $qb = $this->createQueryBuilder('c')
              ->select('DISTINCT c.Gordailua, c')
              ->where('c.MarkIdGordailua = :MarkId')
              ->setParameter('MarkId', $MarkId);
          $Emaitza = $qb->getQuery()->getResult();
          return $Emaitza;
    }       

I would like to how the result would I get in $Emaitza would look. Would it be something like:

$Emaitza[0]['Gordailua'] = the first Gordailua value selected.

and then $Emaitza[0][?????] = The first c type object.

I am kind of confused.Thanks.

Was it helpful?

Solution

First of all you need to specify the From clause:

$qb->from('YourBundle\Entity\ParentOfGordailua as pg');

You can use the: getArrayResult() to fetch the data as an array, if you want get First object from the Object ArrayCollection(when you're using the getResult() you must:

$Gordailua = $Emaitza->first()->getGordailua();

Look at the reference and exaples: http://docs.doctrine-project.org/projects/doctrine-orm/en/2.0.x/reference/dql-doctrine-query-language.html

OTHER TIPS

Can't remember how I came to this post, but I even read it and thought, well .. anyways ..

I think he's asking to get the first result, if so .. the query should first know what the maximum size of result is by doing

$qb->setMaxResults(1)

and then you can call a method that really defines itself

$single_result = $qb->getSingleResult()

So in the example given the code will look like

$qb->getQuery()->setMaxResults(1)->getSingleResult();
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top