Je veux conserver seulement 1000 entrées pour chaque client. Le code ci-dessous fait ce que je veux mais ne boucle pas le client, au lieu de 1000 au total des clients.Supprimer le bouclage SQL
Existe-t-il un moyen de faire cela en SQL? On m'a dit que j'avais besoin d'un curseur, mais j'espère que non.
DECLARE @ids TABLE (id int)
DECLARE @clients TABLE (clientid varchar(20))
INSERT INTO @clients (clientid)
SELECT select distinct clientid FROM tRealtyTrac
INSERT INTO @ids (id)
SELECT top 1000 id FROM tRealtyTrac WHERE clientid in (select clientid from @clients)
DELETE trealtytrac WHERE id NOT IN (select id from @ids)
Ça bouge! Je n'ai jamais utilisé de partition ou de rang avant. Merci edsoverflow. – Bryan