sql >> Database >  >> RDS >> Sqlserver

Retour-ID van rij met dubbele gegevens

Gebruik een vensterfunctie:

select t1.*
from (select t1.*, count(*) over (partition by name) as cnt
      from table1 t1
     ) t1
where cnt > 1;

De count(*) over (partition by name) telt het aantal rijen voor elke naam. Het doet dit echter door de telling aan elke rij toe te voegen, niet door het aantal rijen te verminderen. Dat is de informatie die je nodig hebt om de rijen te selecteren.



  1. Alleen de tekens selecteren die vóór een specifiek symbool in een SQL Select-instructie verschijnen

  2. Illegale mix van sorteringen (latin1_swedish_ci,COERCIBLE) en (utf8_general_ci,IMPLICIT) voor bewerking 'find_in_set'

  3. Werk een veld van een bestaande tabel bij met Auto Increment Logic

  4. Oracle-conversie van SQL naar ANSI SQL