Pouvez-vous obtenir la combinaison distincte de 2 champs différents dans une table de base de données? Si oui, pouvez-vous fournir l'exemple SQL.SQL distinct pour 2 champs dans une base de données
61
A
Répondre
94
Que diriez-vous simplement:
select distinct c1, c2 from t
ou
select c1, c2, count(*)
from t
group by c1, c2
15
Si vous voulez des valeurs distinctes de deux champs, plus retourner d'autres champs avec eux, les autres champs doivent avoir une sorte d'agrégation sur eux (somme, min, max, etc.), et les deux colonnes que vous voulez distinctes doivent apparaître dans la clause group by. Sinon, c'est comme dit Decker.
3
Si vous voulez encore le groupe que par une colonne (comme je le voulais), vous pouvez imbriquer la requête:
select c1, count(*) from (select distinct c1, c2 from t) group by c1
3
Vous pouvez obtenir le résultat distinct par deux colonnes ci-dessous utilisent SQL:
SELECT COUNT(*) FROM (SELECT DISTINCT c1, c2 FROM [TableEntity]) TE
Questions connexes
- 1. Base de données SQL Server - Champs masqués?
- 2. Distinct sur 2 champs différents en même temps
- 3. MYSQL SELECT DISTINCT n'est pas distinct dans le PHP, mais est distinct dans la base de données
- 4. Obtention du nombre de champs dans une base de données avec une instruction SQL?
- 5. Enregistrement dans une base de données SQL?
- 6. SQL distinct et compte
- 7. Comment créer et stocker des champs personnalisés définis par l'utilisateur dans une base de données SQL?
- 8. Renommer des champs de base de données
- 9. Comment ajouter une colonne dans une table de base de données sqlite 2
- 10. Quels champs doivent être inclus dans une table de base de données pour l'authentification de l'utilisateur?
- 11. Télécharger une image PHP/SQL dans une base de données
- 12. Requête SQL Parent-enfant distinct
- 13. Utilisation d'une commande sqlconnection/sql via 2 méthodes liées à la base de données
- 14. Utiliser foreach pour mettre à jour des champs dans une base de données mysql basée sur une autre requête
- 15. jQuery DatePicker - 2 champs
- 16. Base de données SQL avec Phorum
- 17. activerecord, 'foregin_key' doit être une combinaison de 2 champs
- 18. base de données Employés et départements requête avec Sql
- 19. Base de données: Pagination SQL?
- 20. Concevoir une base de données
- 21. sql requête pour exporter les valeurs de ligne d'une base de données SQL Server à une autre
- 22. Asp.net - Création 2 liées listes déroulantes la base de données
- 23. Linq-to-SQL avec les champs de base de données XML - Pourquoi cela fonctionne-t-il?
- 24. Comment comparer la valeur de 2 champs dans Django QuerySet?
- 25. Classe pour extraire automatiquement les champs de base de données dans les contrôles .NET
- 26. Quelle est la meilleure pratique pour compter des valeurs égales dans une base de données?
- 27. Comment migrer les diagrammes de base de données SQL Server vers une autre base de données?
- 28. Enregistrement de champs OpenId dans une base de données - quels sont leurs types/longueurs?
- 29. Requête récapitulative de plusieurs champs dans SQL
- 30. Requête SQL pour un schéma de base de données
Selon les données, grouper est plus lent que distinct – noizer
Pour ceux qui voient que l'opérande doit contenir 1 colonne (s) ', votre problème est que vous faites probablement' select distinct (c1, c2) de t' et vous n'êtes pas autorisé parenthèses ici. Voilà comment je suis arrivé ici. – BookOfGreg