Bonjour,

Je doit faire une requete qui compare 2 champs d'une table et selectionne suivant plusieurs critères:

En gros la requete qui marche dans mySQL :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
SELECT * FROM choix c, pdc p WHERE p.coderoc='752290' AND p.id = c.pdc_id AND (c.datepremierepresentation BETWEEN '2012-01-16 00:00:00' AND '2012-09-20 12:50:00')
Si je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
$sqlQuery = "SELECT * FROM choix c, pdc p WHERE p.coderoc='".$CodeRegate."' AND p.id = c.pdc_id AND (c.datepremierepresentation BETWEEN '".$datedebut."' AND '".$datefin."')";
		$choix = Doctrine_Query::create()
						->execute($sqlQuery);
On me retourne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
You must have at least one component specified in your from.#0 /Library/WebServer/www/api2u/application/controllers/CcmuController.php(210): Doctrine_Query_Abstract->execute('SELECT * FROM c...')
Si je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
$choix = Doctrine_Query::create()
						->from('Choix c, Pdc p')
						->where('p.coderoc = ?', $CodeRegate)
						->andWhere('p.id = c.pdc_id')
						->andWhere('c.datepremierepresentation BETWEEN ? AND ?', array($datedebut, $datefin))
						->execute();
J'obtiens :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
"Pdc" with an alias of "p" in your query does not reference the parent component it is related to.#0 /Library/WebServer/www/api2u/library/Doctrine/Hydrator.php(148): Doctrine_Hydrator_Graph->hydrateResultSet(Object(Doctrine_Connection_Statement))
Pourquoi ? et comment faire ?

Merci