En utilisant Doctrine dans un projet Symfony, je suis arrivé à la situation où je dois appliquer une condition, puis l'une des deux conditions suivantes (qui sont toutes les deux être des sous-requêtes). Je sais que des fonctions etoù() et orWhere(), mais ai du mal à les utiliser pour générer des choses comme: OÙ cond1 ET (cond2 OU cond3)Doctrine - Comment demandez-vous WHERE cond1 ET (cond2 ou cond3)
Répondre
pour la cond2 ou l'utilisation cond3 dans laquelle
où cond1 et dans laquelle cond2 ou dans lequel cond3
Espérons que cela vous permet de démarrer
Cela semble aider avec la partie sous-requête, mais ne semble pas aider à ajouter la hiérarchie à mes opperators ET/OR, non? – m14t
Je ne l'ai pas entendu parler de cet outil, mais ne devrait pas quelque chose comme
... where cond1 andWhere (cond2 orWhere cond3)
travail? Ou quelle que soit la syntaxe actuelle. Ne hésitez pas à me dire si je me trompe et je vais le supprimer et se glissa dans un coin;)
Vous pouvez le faire cinque DQL:
$models = Doctrine::getTable('ModelName')
->findByDql(
'field_one = ? AND (field_two = ? OR field_three = ?)',
array('cond_1','cond_2', 'cond_3')
);
Ainsi modèles $ seront un Doctrine_Collection avec tous les éléments trouvés.
- 1. Doctrine générique WHERE requête?
- 2. CodeIgniter: Comment utiliser la clause WHERE et la clause OU
- 3. Doctrine et alias à partir de la clause select de la clause where
- 4. Doctrine SQL et instructions préparées
- 5. MySQL: Question à propos de SELECT WHERE ET/OU
- 6. Comment sélectionner différentes colonnes de la base de données donnant chacune la somme (ou similaire) d'un autre résultat de requête?
- 7. Doctrine: Comment supprimer une partie d'une clause where d'une requête select dans l'écouteur (preDqlSelect)?
- 8. Propeller ou Doctrine pour l'intégration ZF
- 9. Doctrine et son utilisation
- 10. Requêtes MySQL en utilisant Doctrine et CodeIgniter
- 11. Génériques et clause "where"
- 12. Fragment ARB Si/Else
- 13. comment réutiliser résultat sous-requête dans MySQL
- 14. Comment écrire ce morceau de code dans Clojure
- 15. LIKE et% Wildcard dans findBy * de Doctrine()
- 16. Instruction SQL Select avec WHERE, AND, OU
- 17. Comment faire cela dans Entity Framework (multiple where ou Join)?
- 18. C# continuer/goto requête de base
- 19. Comment écrire un "OU" dans un Linq à Sql .Where()
- 20. Linq Where Clauses - Mieux empiler ou combiner?
- 21. Validation de Doctrine et Zend_Form
- 22. [Smarty, et peut-être doctrine]
- 23. PHP Doctrine relations et l'héritage
- 24. Comment rechercher un Doctrine NestedSet?
- 25. instruction SQL JOIN et WHERE
- 26. Doctrine :: Windows :: Comment générer des modèles Doctrine sur Windows?
- 27. 8 octets Entier avec Doctrine et PHP
- 28. Différence entre Where et Single
- 29. zend framework et de la doctrine (accesseurs)
- 30. Opcode (APC/XCache), Zend, Doctrine et Autoloaders
http://stackoverflow.com/questions/1049617/complex-where-clauses-using-the-php-doctrine-orm m'a permis de faire ce que je voulais. – m14t