Bonjour,

J'essaie de traduire en DQL une requête assez simple avec un innerJoin :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
SELECT DISTINCT objetsechange.idObjetEchange
FROM annonces   
INNER JOIN objetsechange ON objetsechange.idAnnonceEchange = annonces.idAnnonce
En SQL la requête fonctionne... mais sur symfony le problème c'est que quoi que je fasse avec le "->innerJoin" je reçois toujours cette erreur 'Unknown relation alias'.

La requête fait appel à deux tables.
Voici la partie du schéma.yml correspondante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Annonces:
  connection: doctrine
  tableName: annonces
  ..
  idannonce:
    type: integer(4)
    fixed: false
    unsigned: false
    primary: true
    autoincrement: true
  ...
  #Pas de relation avec Objetsechange
 
Objetsechange:
  connection: doctrine
  tableName: objetsechange
  ..
  idobjetechange:
    type: integer(4)
    fixed: false
    unsigned: false
    primary: true
    autoincrement: true
  ...
  # Pas de relations avec Annonces
Dans le schéma.yml les deux tables ne possèdent pas de relations. En SQL j'utilisais "ON objetsechange.idAnnonceEchange = annonces.idAnnonce" pour les relier manuellement.

Ma requête :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
$q = Doctrine_Query::create()
->select('DISTINCT Objetsechange.idobjetechange')
->from('Annonces')
->innerJoin(' ????? ');
Que dois je faire pour pouvoir me servir de "->innerJoin" ?
Quelqu'un pourrait-il me donner l'équivalent DQL de cette requête, que je comprenne mieux comment cela fonctionne ?

Merci d'avance,
bye.