suppression doublon les moins récents
Posté : 08 févr. 2013, 12:20
Bonjour!!
Je vous explique mon problème, je débute avec le SQL et ma boite aimerai que je supprime les doublons les plus anciens (DATEATT) qui sont sur le GA_CODEARTICLE.
Je n'arrive pas à m'en sortir... Je travail sur SQL-SERVER 2008
Voici la requete :
Romain
Je vous explique mon problème, je débute avec le SQL et ma boite aimerai que je supprime les doublons les plus anciens (DATEATT) qui sont sur le GA_CODEARTICLE.
Je n'arrive pas à m'en sortir... Je travail sur SQL-SERVER 2008
Voici la requete :
12345678910111213141516171819202122 SELECT TOP (100) PERCENT dbo.ARTICLE.GA_CODEARTICLE AS Code, dbo.ARTICLE.GA_LIBELLE AS Libellé, dbo.ARTICLE.GA_QUALIFUNITESTO AS Cond,
dbo.ZW_TGD.YTS_PRIXNET AS TGD, dbo.ZW_T000.YTS_PRIXNET AS Tarif, dbo.ARTICLE.GA_VALLIBRE1 AS Planc, dbo.ZW_TDES.YTS_PRIXNET AS Desto,
dbo.DISPO.GQ_PHYSIQUE - dbo.DISPO.GQ_RESERVECLI AS Dispo, dbo.ZW_DATERECEPART.DATEATT AS [D. Arriv],
dbo.ZW_ETAT_CONTAINER.RDD_RDDLIBTABLE1 AS S, dbo.ZWL_STOCKARTA.QDISPOP AS Réser,
dbo.ZWL_STOCKARTA.QATT + dbo.ZWL_STOCKARTA.QDISPO AS Solde, dbo.ZW_TDET.YTS_PRIXNET AS Détail, dbo.CHOIXEXT.YX_LIBELLE AS Statut,
dbo.ZW_DATERECEPART.qtecartons AS [Arr.]
FROM dbo.ZW_TDET INNER JOIN
dbo.ARTICLE INNER JOIN
dbo.ZW_T000 ON dbo.ARTICLE.GA_ARTICLE = dbo.ZW_T000.YTS_ARTICLE INNER JOIN
dbo.DISPO ON dbo.ARTICLE.GA_ARTICLE = dbo.DISPO.GQ_ARTICLE ON dbo.ZW_TDET.YTS_ARTICLE = dbo.ARTICLE.GA_ARTICLE INNER JOIN
dbo.CHOIXEXT ON dbo.ARTICLE.GA_LIBREART1 = dbo.CHOIXEXT.YX_CODE LEFT OUTER JOIN
dbo.ZW_TGD ON dbo.ARTICLE.GA_ARTICLE = dbo.ZW_TGD.YTS_ARTICLE LEFT OUTER JOIN
dbo.ZW_DATERECEPART INNER JOIN
dbo.ZW_ETAT_CONTAINER ON dbo.ZW_DATERECEPART.Expr1 = dbo.ZW_ETAT_CONTAINER.GP_NUMERO ON
dbo.ARTICLE.GA_ARTICLE = dbo.ZW_ETAT_CONTAINER.GLARTICLE AND dbo.ARTICLE.GA_ARTICLE = dbo.ZW_DATERECEPART.ARTICLE LEFT OUTER JOIN
dbo.CATALOGU ON dbo.ARTICLE.GA_ARTICLE = dbo.CATALOGU.GCA_ARTICLE AND dbo.ARTICLE.GA_FOURNPRINC = dbo.CATALOGU.GCA_TIERS LEFT OUTER JOIN
dbo.ZWL_STOCKARTA ON dbo.ARTICLE.GA_ARTICLE = dbo.ZWL_STOCKARTA.QARTICLE LEFT OUTER JOIN
dbo.ZW_TDES ON dbo.ARTICLE.GA_ARTICLE = dbo.ZW_TDES.YTS_ARTICLE
WHERE (dbo.DISPO.GQ_DEPOT = 'C') AND (dbo.ARTICLE.GA_FERME = '-') AND (dbo.ZWL_STOCKARTA.QATT <> 0) AND (dbo.ZW_DATERECEPART.qtecartons <> 0) OR
(dbo.DISPO.GQ_DEPOT = 'C') AND (dbo.ARTICLE.GA_FERME = '-') AND (LEFT(dbo.ARTICLE.GA_CODEARTICLE, 1) <> 'a') AND (LEFT(dbo.ARTICLE.GA_CODEARTICLE, 1)
<> 'b') AND (LEFT(dbo.ARTICLE.GA_CODEARTICLE, 1) <> 'w') AND (dbo.DISPO.GQ_PHYSIQUE - dbo.DISPO.GQ_RESERVECLI > 0)
ORDER BY Code
Merci pour votre aide!!Romain