Le mieux serait quand même de passer par les innerJoin() ou les leftJoin()

Doctrine fait le travail de jointure tout seul.
Il faut paramétrer la relation dans le schema.yml 

Et après :

Doctrine::getTable('Evenement')->createQuery('e')
        ->select('e.titreevenement, e.noevenement, d.dated as dated_field')
        ->leftJoin('Evenement.Dated d')
        ->where('d.dated > ?',$date)
        ->orderBy('e.noevenement ASC')
        ->limit(5)
        ->execute();

L'avantage est que tu peux ensuite dans un objet Evenement faire un
getDated() pour récupérer les dated rattachés à l'évenement. Tout
simplement.

-----Message d'origine-----
De : [email protected] [mailto:[email protected]] De la
part de Cédric Chabert
Envoyé : mardi 25 janvier 2011 15:45
À : [email protected]
Objet : Re: [symfony-fr] requete doctrine

Merci beaucoup, c'était ça ! J'avais écarté cette éventualité car il n'y
avait pas de problème sur phpmyadmin en requete sql brute, mais bon les
petits cadeaux de symfony...

Merci encore, bonne journée


Le 25 janvier 2011 15:16, Yoann BRIEUX <[email protected]> a écrit :


        Salut,
        
        De tête, peut-être que c'est un problème entre le champ et ta table
qui portent le même nom.
        
        Essaye :
        
                $req2 = Doctrine_Query::create()
                        ->select('e.titreevenement, e.noevenement, d.dated
as dated_field')
                        ->from('evenement e,dated d')
                        ->where('d.dated > ?',$date)
                        ->andWhere('e.nodate=d.nodate')
                        ->orderBy('e.noevenement ASC')
                        ->limit(5)
                        ->execute();


        Le 25/01/2011 15:11, Cédric Chabert a écrit : 

                Bonjour,
                
                j'ai un petit souci avec une requete doctrine.
                
                Cette requette marche très bien :
                        $req2 = Doctrine_Query::create()
                                ->select('e.titreevenement, e.noevenement,')
                                ->from('evenement e,dated d')
                                ->where('d.dated > ?',$date)
                                ->andWhere('e.nodate=d.nodate')
                                ->orderBy('e.noevenement ASC')
                                ->limit(5)
                                ->execute();
                
                Cependant j'ai besoin de récupérer dated dans la table dated
donc :
                        $req2 = Doctrine_Query::create()
                                ->select('e.titreevenement, e.noevenement,
d.dated')
                                ->from('evenement e,dated d')
                                ->where('d.dated > ?',$date)
                                ->andWhere('e.nodate=d.nodate')
                                ->orderBy('e.noevenement ASC')
                                ->limit(5)
                                ->execute();
                et ceci ne marche pas...
                
                Auriez vous une idée?
                
                Cordialement
                



        
        -- 
        Cordialement,
        
        Yoann Brieux Agence TIGRE BLANC 179 rue Saint-Albin 59500 Douai Tél.
03.27.98.67.05

        

        -- 
        Vous recevez ce message, car vous êtes abonné au groupe Google
Groupes Symfony-fr.
        Pour envoyer un message à ce groupe, adressez un e-mail à
[email protected].
        Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse
[email protected]
<mailto:symfony-fr%[email protected]> .
        Pour plus d'options, consultez la page de ce groupe :
http://groups.google.com/group/symfony-fr?hl=fr
        


--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes
Symfony-fr.
Pour envoyer un message à ce groupe, adressez un e-mail à
[email protected].
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse
[email protected].
Pour plus d'options, consultez la page de ce groupe :
http://groups.google.com/group/symfony-fr?hl=fr


-- 
Vous recevez ce message, car vous êtes abonné au groupe Google 
Groupes Symfony-fr.
Pour envoyer un message à ce groupe, adressez un e-mail 
à [email protected].
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse 
[email protected].
Pour plus d'options, consultez la page de ce groupe : 
http://groups.google.com/group/symfony-fr?hl=fr

Répondre à