J'ai une table avec des numéros de carte et des noms. Certains de ces noms sont identiques, ce qui signifie qu'ils ont plusieurs cartes. Comment puis-je sélectionner toutes les lignes où le nom apparaît plus d'une fois?Requête SQL pour renvoyer toutes les lignes contenant des données en double d'un champ
Répondre
suivant peut être la solution que vous cherchez
Select * from CardTable where cardid in (select cardid from CardTable group by cardid having count(cardid) > 1)
select count(*) as n, [name]
from table1
group by [name]
having n > 1
SQL Server ne vous permet pas de faire référence à des alias de colonne dans le GROUP BY ou HAVING - vous obtiendrez « nom de colonne non valide « n » », au moins sur SQL Server 2005. –
Ce qui suit devrait fonctionner:
SELECT *
FROM cards c1
INNER JOIN cards c2 on c1.name = c2.name
WHERE c2.id <> c1.id
Utilisation:
SELECT t.name
FROM TABLE t
GROUP BY t.name
HAVING COUNT(*) > 1
si vous avez besoin des rangées entières , voici une solution qui fonctionnera sur s ql 7 et jusqu'à
SELECT t1.* FROM(
SELECT t.name
FROM YourTable t
GROUP BY t.name
HAVING COUNT(*) > 1) t2
JOIN YourTable t1 on t2.name = t1.name
Les performances de cette requête sont-elles aussi bonnes que SELECT * FROM YourTable WHERE t.nom IN (sous-requête) sur MS SQL? – Unreason
- 1. Requête SQL avec des enregistrements en double
- 2. MySQL: Requête pour obtenir toutes les lignes du mois précédent
- 3. Requête SQL pour rechercher le schéma de toutes les tables
- 4. requête SQL Pour supprimer les lignes
- 5. requête SQL pour trouver la somme de toutes les lignes et compte des doublons
- 6. Quelle est la requête SQL pour lister toutes les lignes ayant 2 sous-lignes de colonne en tant que doublons?
- 7. Faire un champ monotones à travers toutes les lignes
- 8. Obtenir toutes les lignes parent dans une requête SQL
- 9. Renvoyer toutes les lignes ayant une valeur maximale
- 10. requête pour résumer les champs en double
- 11. La requête SQL transforme les résultats des colonnes en lignes
- 12. Comment comparer les lignes sans les renvoyer dans une requête
- 13. requête SQL pour générer des données données
- 14. Comment renvoyer les types de données SQL de ma requête?
- 15. requête pour obtenir uniquement les données en double
- 16. Supprimer les lignes en double par valeur
- 17. Requête SQL Server renvoyant plusieurs lignes
- 18. requête sql ne tenant pas compte de toutes les lignes qui ont toutes les colonnes
- 19. extraction de sous-requête - Toutes les lignes
- 20. Découverte des lignes en double
- 21. Lignes en double dans Oracle
- 22. Requête MySQL pour renvoyer uniquement les entrées en double avec les chiffres
- 23. supprimer les lignes en double
- 24. SSIS: Les données transforment les lignes délimitées en champ
- 25. La vue SQL génère les lignes en double
- 26. Comment renvoyer toutes les lignes de résultats résultant d'une exécution d'instruction SQL vers la page d'où provient la requête AJAX
- 27. Comment faire une instruction SQL pour renvoyer toutes les lignes lorsqu'une variable est vide, sinon renvoyer uniquement correspond
- 28. Trouver toutes les tables avec un champ contenant des valeurs de chaîne xml
- 29. Comment supprimer des valeurs en double pour un champ dans une table avec une seule requête?
- 30. Comment supprimer complètement les lignes en double
La sous-requête n'est nécessaire que si vous voulez retourner colonnes autres que le nom. –
-1: Votre requête ne fonctionne pas et ne retournera aucune ligne. count (cardid) = 1 si group par cardid, pour toutes les lignes. – Unreason
Je pense que vous avez besoin de lire correctement la question –