Bonjour,
J'ai cette relation :
entreprise one-to-many salarié one-to-many voiture
J'aimerais sélectionner tous les salariés qui n'ont pas de voiture mais je suis bloqué...
J'ai la contrainte de sélectionner aussi que les salariés appartenant à l'entreprise passer en paramètre et différents de celui passer en paramètre.
Voici ce que j'ai commencé à faire :
Je comprends que cela ne puisse pas marcher, mais je ne vois pas comment faire pour que ça fonctionne...
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 public function queryfindByEntrepriseId($entreprise, $salarie = null) { $q = $this->createQueryBuilder('salarie') ->leftJoin('salarie.entreprise', 'entreprise') ->addSelect('entreprise') ->leftJoin('entreprise.salaries', 'salaries') ->where('salaries.voiture = :voiture') ->setParameter('voiture', null ); if($salarie){ $q->andWhere('salarie.id != :salarie') ->andWhere('entreprise.id = :entreprise') ->setParameter('salarie',$salarie); }else{ $q->andWhere('entreprise.id = :entreprise'); } $q->setParameter('entreprise',$entreprise); return $q; }
J'imagine qu'il y a peut être une sous requête à faire?
Merci pour votre aide.
Partager