table a des doublons:rowid et trouver des doublons?
JOB JOBID EMPID
-------------------- -------------------- --------------------
Manager 10 1
Manager 10 1
Operations 20 2
Engineer 30 3
Manager 10 1
Operations 30 2
La requête
select * from dept
where rowid not in (select min(rowid) from dept group by job);
donne des résultats comme:
JOB JOBID EMPID
-------------------- -------------------- --------------------
Manager 10 1
Operations 30 2
Manager 10 1
quelqu'un peut-il expliquer comment traiter ne pour récupérer le résultat? Je sais que chaque ligne a rowid
unique. mais d'abord la sous-requête s'exécute pour obtenir le minimum de rowid
qui est la première ligne et ensuite compare (pas dans) avec le externe qui récupère tous rowid
. Est-ce que certains peuvent expliquer beaucoup plus clairement comment comparer et récupérer 3 lignes comme résultat? Essayer de comprendre la logique simple. ?
Vous avez tagué ceci pour MySQL et pour Oracle. Je suppose que la balise MySQL est incorrecte en fonction du contenu de la question. Est-ce que cela devrait être retiré? Ou y a-t-il une partie de la question MySQL qui me manque? –