Par exemple, j'ai deux tables:
Name | Age -------------------- test 1 | 18 test 1 | 18
3 Réponses :
Utiliser avec un index sur Existe code>: (nom, âge, id) code>, cela devrait être l'approche la plus rapide. p> p>
Le problème est ce que c'est si j'ai deux tables: je veux dire dans une table est id et nom et dans l'autre table est un AGE_ID, l'ID de l'autre table (clé étrangère) et l'âge
Vous pouvez également utiliser un et un groupe par peut être combiné à avoir à obtenir uniquement ceux qui ont une duplication (nom, âge). p> dans code> sur des truppeaux.
Essayez la requête suivante:
Select t1.*, t2.*
from table1 t1
join table2 t2
on t1.id = t2.id
join (select id, age
from table2
group by id, age
having count(*) > 1
) t3
on t1.id = t2.id and t2.id = t3.id and t2.age = t3.age
J'ai mis à jour la requête en fonction de vos commentaires. S'il vous plaît essayez la requête mise à jour
Merci beaucoup ça marche
heureux de vous aider. N'hésitez pas à demander quoi que ce soit.
une jointure travaillera juste bien
J'ai édité ma question pour décrire mon problème plus précisément
Pourquoi voulez-vous imprimer la même ligne deux fois?
multiple de nom i> Qu'est-ce que cela signifie?
Dans mon programme, il y a d'autres colonnes différentes dans les deux rangées
Le nom apparaît multiplier dans une table (désolé je ne suis pas un locuteur natif)
Les deux tables ont-elles plus de colonnes que ce que vous avez montré ici?
Oui, cet exemple devrait être simple pour vous afin que vous ayez un meilleur aperçu
En fait, cela ne le fera pas simple. En fait, cela nous fera de fournir de mauvaises solutions. Vous devriez mentionner cela dans votre question afin d'obtenir un résultat correct.
Petite remarque. Si ces noms sont des personnes, alors plus souvent, on stockerait l'anniversaire des personnes. Puis calculez l'âge de cette date dans les requêtes. Beaucoup plus facile que d'avoir à corriger les valeurs d'âge dans les tables.
Je teste les réponses ci-dessous et si cela ne fonctionne pas, je vais mettre à jour ma question
L'âge est un exemple. Dans mon programme, j'utilise des datetes