Je gère une requête où je dois rejoindre 2 tables, table de commande et commande. Lorsque je les rejoint, cela crée une ligne pour chaque produit dans la table de commande. J'ai seulement besoin de la commande pour vérifier si une colonne a une valeur. Comment puis-je regrouper mes résultats pour afficher une seule commande?
Id CustomerId OrderTotal xxx xxx xxx xxx 1 1 5.00 x x x x 2 2 5.00 x x x x
3 Réponses :
Ajouter un groupe par, devrait fonctionner pour vous, bien que vous souhaitiez généralement faire une somme () pour que cela soit significatif.
Il suffit d'ajouter distinct code>
Essayez quelque chose comme ceci, je n'ai pas la DB et les données, mais vous pouvez essayer de suivre les étapes suivantes (diviser la requête en petits)
- Faites d'abord la requête pour obtenir le groupe total de la commande par ordreid, je pense qu'une seule commande est une relation individuelle avec le client li> ul> li>
- Faites la jointure avec la table de commande à l'aide de la commandeAdid li> ul> li> ol> blockquote>
Après cela, vous pouvez ajouter la commande ou où la requête p>
xxx pré> considère p> p> p>
Cela ressemble plus à la sélection distincte que le groupe par. Êtes-vous sûr de vouloir commanderTotal 5.00 et pas 10h00?
Tout comme les duplicataires marqués, vous n'avez pas vraiment besoin de vous joindre à cela du tout. Une fonction existez () dans la clause WHERE est la meilleure solution.
Tout d'abord, faites une requête pour regrouper votre table "Commande de commande" par OrderId, puis faites-vous rejoindre la table "Commande" de la clientèle