J'ai une base de données d'organisations SQL Server et il existe de nombreuses lignes en double. Je veux exécuter une instruction select pour saisir tout cela et la quantité de dupes, mais aussi renvoyer les identifiants associés à chaque organisation.
Une déclaration comme:
SELECT orgName, COUNT(*) AS dupes
FROM organizations
GROUP BY orgName
HAVING (COUNT(*) > 1)
Rendra quelque chose comme
orgName | dupes
ABC Corp | 7
Foo Federation | 5
Widget Company | 2
Mais j'aimerais aussi récupérer leurs identifiants. Y a-t-il un moyen de faire ça? Peut-être comme un
orgName | dupeCount | id
ABC Corp | 1 | 34
ABC Corp | 2 | 5
...
Widget Company | 1 | 10
Widget Company | 2 | 2
La raison étant qu'il existe également une table distincte d'utilisateurs qui se lient à ces organisations, et je voudrais les unifier (par conséquent, supprimez les dupes afin que les utilisateurs se lient à la même organisation au lieu des organisations dupes). Mais je voudrais une partie manuellement pour ne rien gâcher, mais j'aurais toujours besoin d'une déclaration renvoyant les identifiants de toutes les organisations dupes afin de pouvoir parcourir la liste des utilisateurs.