Supprimer des doublons en sql sous ACCESS

melongourmand Messages postés 24 Date d'inscription   Statut Membre Dernière intervention   -  
Exileur Messages postés 1475 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je demande encore une foi de plus votre aide .
Tout est dans le titre ^^ , donc j'explique j'ai des doublons sur plusieurs ligne et je souhaite les supprimés j'ai egalement lié a ceci une colonne ou je calcule le nombre de charges et c'est pour cela que sa fait autant de doublons , je voudrais calculer la sommes des charges sur une seul ligne et de supprimer tous mes doublons .

Exemple

NUM NOM PRENOM CHARGES
----------- ---------------- --------
33 DUPONT marc 51
33 DUPONT marc 8
33 DUPONT marc 1

Moi je veux obtenir
NUM NOM PRENOM CHARGES
----------- ---------------- --------
33 DUPONT marc 60(51+8+1)

Vous avez une piste ?
A voir également:

2 réponses

Exileur Messages postés 1475 Date d'inscription   Statut Membre Dernière intervention   150
 
Salut,

Donc, ta table actuelle s'appelle "ta_table", crées une nouvelle table sur la même architecture, que tu appelles NOUVELLE_TABLE (exemples).
Histoire de ne pas toucher a la table d'origine en cas d'erreur.

Le script effectue un DISTINCT nom.
Donc si tu as un Dupont marc et un Dupont michel, le script ne fera pas la différence entre les deux, a toi de modifier le code à ta guise.

<?php
connectDB();
$sql= 'SELECT distinct nom FROM ta_table';
$req= mysql_query ($sql) or die ('Erreur SQL!'.$sql.'<br/>' .mysql_error());

while ($data=mysql_fetch_array($req))
{
$sql2='SELECT * FROM ta_table WHERE nom ='.$data['nom'].'';
$req2= mysql_query ($sql2) or die ('Erreur SQL!'.$sql2.'<br/>' .mysql_error());
$charges = 0;

while ($data2 = mysql_fetch_array($req2))
{
$num = $data2['num'];
$nom = $data2['nom'];
$prenom = $data2['prenom'];
$charges = $charges + $data2['charges'];
}
$sql3 = ' INSERT INTO NOUVELLE_TABLE(num, nom, prenom, charges)
VALUES ('.$num.', '.$nom.', '.$prenom', '$charges')';
$req3 = mysql_query ($sql3) or die ('Erreur SQL!'.$sql3.'<br/>' .mysql_error());

}
mysql_close();
?>

Cordialement
Exileur

N'oubliez pas de marquez votre post comme résolut lorsque vous avez eu les réponses à vos questions...
Au royaume des aveugles, les borgnes sont rois.
0
melongourmand Messages postés 24 Date d'inscription   Statut Membre Dernière intervention  
 
Merci Exileur pour ta reponse rapide , je ne doute pas que cela fonction en php.
Comme je l'ai dit je fait des requete SQL sous ACCESS je ne fait pas de script.Je veu juste suprimmer mes doublons sans passer par une autre table , je penser moi plutot a un genre de condition "iif" qui pourrait faire la supression car avec un SELECT DISTINCT cela ne marche pas :( . Je veux just pouvoir calculer ma colonne "charges" , j'ai beau mettre un SUM (charges) mais sans succé.
0
Exileur Messages postés 1475 Date d'inscription   Statut Membre Dernière intervention   150
 
Oops, j'ai pas fais attention. Je suis désolé mais je ne peux pas vous aider... Je n'y connais rien a access :/
0
melongourmand Messages postés 24 Date d'inscription   Statut Membre Dernière intervention  
 
personne ne peu m'aider ?
0
Exileur Messages postés 1475 Date d'inscription   Statut Membre Dernière intervention   150
 
Si vous exportez votre base de donnée, je dois pouvoir utiliser mon script sous php pour supprimer les doublons. Sinon, vous installez wamp, exporter votre bdd, vous l'incluez dans phpmyadmin, et utilisez le script que je vous ai fait.
0

Discussions similaires