2009-08-14 9 views
1

J'ai une table avec les champs suivants dans Oracle 10g.Recherche d'entrées en double dans une table

TABLE_1

compte_no | tracking_id | trans_amount

Chaque compte_no peut avoir plusieurs identifiants de suivi et montants de transaction.

Comment interroger les entrées en double de account_no où le suivi se situe entre 1 et 1000, et le trans_amount correspondant?

Un grand merci à l'avance pour votre aide,

novice.

+0

Pouvez-vous clarifier vos attentes avec l'entrée et la sortie d'échantillons? –

+0

Merci Matt. J'ai trouvé la solution. Mais je vais poster quelques exemples de données la prochaine fois que je pose la question :) – novice

+0

Quelle était la solution? –

Répondre

5

Essayez la requête suivante:

SELECT account_no, tracking_id, trans_amount 
FROM TABLE_1 
WHERE 
account_no IN 
    (
    SELECT account_no FROM TABLE_1 
    WHERE tracking_id >= 1 AND tracking_id <= 1000 
    GROUP BY account_do 
    HAVING COUNT(*) > 1 
    ) 

Explication de la sous-requête: il trouve tous les s » pour account_no qui il y a plus de 1 telle que son tracking_id est compris entre 1 et 1000.

I J'espère que c'est ce que tu voulais dire.

Questions connexes