Supposons qu'il existe deux modèles m1 et m2, et maintenant nous devons lancer une requête égale à "SELECT * FROM m1, m2" dans django. Comment faire? Je vous remercie.Comment écrire une 'from clause' dans django?
Répondre
EDIT:
m1.objects.all() + m2.objects.all()
list(m1.objects.all()) + list(m2.objects.all())
Mais .. Daniel Roseman a un très bon point sur le produit cartésien - si c'est ce que tu voulais dire.
Je suppose que vous vous rendez compte que le SQL que vous avez publié produit une jointure cartésienne entre les tables m1 et m2? C'est-à-dire que votre jeu de résultats inclut toutes les lignes possibles de m1 jointes à toutes les lignes possibles de m2, donc si vous avez 5 lignes dans une table et 10 dans une autre, vous obtiendrez 50 résultats.
Si c'est vraiment ce que vous voulez, et je ne vois pas pourquoi vous le feriez, il n'y a pas de moyen facile de le faire dans l'ORM de Django.
Cependant, si ce que vous avez réellement voulu dire était simple JOIN:
SELECT * from m1, m2 WHERE m1.m2_id = m2.id;
alors vous pouvez obtenir quelque chose de similaire avec la méthode select_related()
.
- 1. Comment faire une sous-requête Postgresql dans une clause select avec une jointure from from clause comme SQL Server?
- 2. composition LINQ - génère une étrange clause FROM
- 3. clause FROM nécessaire dans chaque instruction SELECT
- 4. Erreur de syntaxe dans la clause FROM
- 5. SQL: Avoir une table deux fois dans la clause FROM
- 6. django send_mail from queryset
- 7. Instructions HQL sans clause FROM et WHERE
- 8. SQL: Utilisation de la table cible dans une instruction UPDATE dans une imbriquée clause FROM
- 9. Mise en veille prolongée DetachedCriteria dans la clause FROM
- 10. Comment écrire une demande filtre/préprocesseur dans Django
- 11. DESCRIBE dans une sous-requête FROM
- 12. Comment écrire cette URL dans Django?
- 13. Comment écrire ce "modèle" dans Django?
- 14. Utilisation de la variable from dans une instruction select
- 15. Comment écrire un compte SQL avec une clause group by utilisant Propel ORM dans Symfony?
- 16. Comment utiliser une clause IN dans iBATIS?
- 17. Comment puis-je écrire cette requête dans Django?
- 18. Est-il possible d'utiliser une instruction Case dans un SQL? De la clause From
- 19. en utilisant django-easy_thumbnails from view
- 20. Comment écrire une requête linq pour xml dans vb.net?
- 21. Peut-on écrire sous_requête entre SELECT et FROM
- 22. Comment écrire ce modèle Django en SQL?
- 23. puis-je utiliser une clause if dans une clause where?
- 24. NHibernate: createCriteria et d 'une clause
- 25. Comment utiliser le nom de colonne d'une clause externe dans une clause interne?
- 26. Comment écrire 'dans une requête SQL?
- 27. Comment écrire une requête dans CodeIgniter active Enregistrement
- 28. Comment puis-je tester le code dql sans la clause FROM?
- 29. CodeIgniter: Comment utiliser la clause WHERE et la clause OU
- 30. Comment écrire: else dans condp dans Clojure?
Ceci échouera à moins que m1 et m2 ne soient du même modèle. Ou ai-je tort? –
C'est une addition de liste simple, elle ne peut pas échouer. –
-1. Les Querysets ne sont pas des listes. Cela échouera - en fait, il échouera même s'il s'agit du même modèle, car la classe QuerySet ne définit simplement pas la méthode '__add__'. –