Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

requete sql pour supprimer doublons

5 réponses
Avatar
PHIL
Bonjour,
j'ai une table avec des doublons.
c'est a dire deux fois le meme numero et le meme titre

comment faire avec une requete pour supprimer tout les doublons de ma table.

merci

5 réponses

Avatar
Philippe T [MS]
Bonjour,

Avez vous un élément discriminant comme une date ou autre.

Si le volume est faible : un créate table avec un :

INSERT INTO MaTableTemp(xx,yy,zz) SELECT DISTINCT xx,yy,zz FROM MaTable

DELETE FROM MaTable

INSERT INTO MaTable SELECT * FROM MaTableTemp

Le tout dans une transaction ou avec un backup avant en cas de crash.

Phil.
________________________________________________________
Philippe TROTIN http://blogs.msdn.com/ptrotin
Microsoft Services France http://www.microsoft.com/france

"PHIL" wrote in message
news:
Bonjour,
j'ai une table avec des doublons.
c'est a dire deux fois le meme numero et le meme titre

comment faire avec une requete pour supprimer tout les doublons de ma


table.

merci


Avatar
PHIL
est t'il possible de faire un requete sans utiliser un create.

comment cette requete s'ecrirai.

merci

"Philippe T [MS]" wrote:

Bonjour,

Avez vous un élément discriminant comme une date ou autre.

Si le volume est faible : un créate table avec un :

INSERT INTO MaTableTemp(xx,yy,zz) SELECT DISTINCT xx,yy,zz FROM MaTable

DELETE FROM MaTable

INSERT INTO MaTable SELECT * FROM MaTableTemp

Le tout dans une transaction ou avec un backup avant en cas de crash.

Phil.
________________________________________________________
Philippe TROTIN http://blogs.msdn.com/ptrotin
Microsoft Services France http://www.microsoft.com/france

"PHIL" wrote in message
news:
> Bonjour,
> j'ai une table avec des doublons.
> c'est a dire deux fois le meme numero et le meme titre
>
> comment faire avec une requete pour supprimer tout les doublons de ma
table.
>
> merci





Avatar
Philippe T [MS]
Bonjour,

Il est possible d'utiliser une table temporaire :

DECLARE @MaTableTemp TABLE(xx int, yy nvarchar(100), zz datetime)

INSERT INTO @MaTableTemp(xx,yy,zz) SELECT DISTINCT xx,yy,zz FROM MaTable
GROUP BY xx, yy, zz

DELETE FROM MaTable

INSERT INTO MaTable SELECT * FROM @MaTableTemp

Phil.
________________________________________________________
Philippe TROTIN http://blogs.msdn.com/ptrotin
Microsoft Services France http://www.microsoft.com/france

"PHIL" wrote in message
news:
est t'il possible de faire un requete sans utiliser un create.

comment cette requete s'ecrirai.

merci

"Philippe T [MS]" wrote:

> Bonjour,
>
> Avez vous un élément discriminant comme une date ou autre.
>
> Si le volume est faible : un créate table avec un :
>
> INSERT INTO MaTableTemp(xx,yy,zz) SELECT DISTINCT xx,yy,zz FROM MaTable
>
> DELETE FROM MaTable
>
> INSERT INTO MaTable SELECT * FROM MaTableTemp
>
> Le tout dans une transaction ou avec un backup avant en cas de crash.
>
> Phil.
> ________________________________________________________
> Philippe TROTIN http://blogs.msdn.com/ptrotin
> Microsoft Services France http://www.microsoft.com/france
>
> "PHIL" wrote in message
> news:
> > Bonjour,
> > j'ai une table avec des doublons.
> > c'est a dire deux fois le meme numero et le meme titre
> >
> > comment faire avec une requete pour supprimer tout les doublons de ma
> table.
> >
> > merci
>
>
>


Avatar
PHIL
Une fois que j'aurai toute les données, sans doublons dans ma table
temporaire,il faut que je supprime ma table d'origine,et laisse seulement ma
table temporaire?

"Philippe T [MS]" wrote:

Bonjour,

Il est possible d'utiliser une table temporaire :

DECLARE @MaTableTemp TABLE(xx int, yy nvarchar(100), zz datetime)

INSERT INTO @MaTableTemp(xx,yy,zz) SELECT DISTINCT xx,yy,zz FROM MaTable
GROUP BY xx, yy, zz

DELETE FROM MaTable

INSERT INTO MaTable SELECT * FROM @MaTableTemp

Phil.
________________________________________________________
Philippe TROTIN http://blogs.msdn.com/ptrotin
Microsoft Services France http://www.microsoft.com/france

"PHIL" wrote in message
news:
> est t'il possible de faire un requete sans utiliser un create.
>
> comment cette requete s'ecrirai.
>
> merci
>
> "Philippe T [MS]" wrote:
>
> > Bonjour,
> >
> > Avez vous un élément discriminant comme une date ou autre.
> >
> > Si le volume est faible : un créate table avec un :
> >
> > INSERT INTO MaTableTemp(xx,yy,zz) SELECT DISTINCT xx,yy,zz FROM MaTable
> >
> > DELETE FROM MaTable
> >
> > INSERT INTO MaTable SELECT * FROM MaTableTemp
> >
> > Le tout dans une transaction ou avec un backup avant en cas de crash.
> >
> > Phil.
> > ________________________________________________________
> > Philippe TROTIN http://blogs.msdn.com/ptrotin
> > Microsoft Services France http://www.microsoft.com/france
> >
> > "PHIL" wrote in message
> > news:
> > > Bonjour,
> > > j'ai une table avec des doublons.
> > > c'est a dire deux fois le meme numero et le meme titre
> > >
> > > comment faire avec une requete pour supprimer tout les doublons de ma
> > table.
> > >
> > > merci
> >
> >
> >





Avatar
Philippe T [MS]
Bonjour,

Moi, je me contenterai de vider la table de destination avec un TRUNCATE
TABLE MaTable ou un DELETE FROM MaTable et de la reremplir avec les données
de la table temporaire mais cela dépend du volume de données dont on parle.

Combien y a t il de ligne dans la table avec doublons ?

Phil.
________________________________________________________
Philippe TROTIN http://blogs.msdn.com/ptrotin
Microsoft Services France http://www.microsoft.com/france

"PHIL" wrote in message
news:
Une fois que j'aurai toute les données, sans doublons dans ma table
temporaire,il faut que je supprime ma table d'origine,et laisse seulement


ma
table temporaire?

"Philippe T [MS]" wrote:

> Bonjour,
>
> Il est possible d'utiliser une table temporaire :
>
> DECLARE @MaTableTemp TABLE(xx int, yy nvarchar(100), zz datetime)
>
> INSERT INTO @MaTableTemp(xx,yy,zz) SELECT DISTINCT xx,yy,zz FROM MaTable
> GROUP BY xx, yy, zz
>
> DELETE FROM MaTable
>
> INSERT INTO MaTable SELECT * FROM @MaTableTemp
>
> Phil.
> ________________________________________________________
> Philippe TROTIN http://blogs.msdn.com/ptrotin
> Microsoft Services France http://www.microsoft.com/france
>
> "PHIL" wrote in message
> news:
> > est t'il possible de faire un requete sans utiliser un create.
> >
> > comment cette requete s'ecrirai.
> >
> > merci
> >
> > "Philippe T [MS]" wrote:
> >
> > > Bonjour,
> > >
> > > Avez vous un élément discriminant comme une date ou autre.
> > >
> > > Si le volume est faible : un créate table avec un :
> > >
> > > INSERT INTO MaTableTemp(xx,yy,zz) SELECT DISTINCT xx,yy,zz FROM


MaTable
> > >
> > > DELETE FROM MaTable
> > >
> > > INSERT INTO MaTable SELECT * FROM MaTableTemp
> > >
> > > Le tout dans une transaction ou avec un backup avant en cas de


crash.
> > >
> > > Phil.
> > > ________________________________________________________
> > > Philippe TROTIN


http://blogs.msdn.com/ptrotin
> > > Microsoft Services France http://www.microsoft.com/france
> > >
> > > "PHIL" wrote in message
> > > news:
> > > > Bonjour,
> > > > j'ai une table avec des doublons.
> > > > c'est a dire deux fois le meme numero et le meme titre
> > > >
> > > > comment faire avec une requete pour supprimer tout les doublons de


ma
> > > table.
> > > >
> > > > merci
> > >
> > >
> > >
>
>
>