Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/05/2007, 11h13   #1
Invité régulier
 
Inscription : juillet 2006
Messages : 25
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 25
Points : 6
Points : 6
Par défaut Traitement de cumul de montants sur un fichier plat

Bonjour à tous.

J'aurai besoin de vos conseils pour un problême de la plus extrême importance

Alors voila le soucis : j'ai un fichier plat qui correspond aux données d'une base. Chaque enregistrement correspond à un encours avec des caractéristiques (A,B..N) et deux montants (quantité, valeur).
Je voudrais créer un fichier avec des enregistrements uniques sur les caractéristiques (A..N) et des montants agrégés sur ces critères.

Pensez-vous que c'est possible?
Avez-vous des idées?

Rem: ce qui peux poser problème, c'est que chaque ligne possède un numéro d'enregistrement qui ne faut pas prendre en compte comme critère.. l'idéal serait d'avoir une numérotation des lignes du fichier résultat.
desbrandesq est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2007, 12h05   #2
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 546
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 546
Points : 7 776
Points : 7 776
tu peux faire une VUE dans la base elle meme tout simplement et etraire le contenue de la vue dans un fichier


si tu n'as accès qu'au fichier... il faut bidouillerproprement un calcul de valeur etc...

exemple
Code :
1
2
3
titi 2 6
 
cat fichier | awk '{print $1" "$2*$3}' > nouveaufichierplat
test live :
Citation:
sgm>echo "titi 2 3" | awk '{print $1" "$2*$3}'
titi 6
sgm>
bien sur c'est à adapter à ton cas avec X colonnes et Y lignes mais tu dois pouvoir faire ce que tu veux comme mise en forme de ton fichier vers uun fichier de sortie.
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2007, 12h38   #3
Invité régulier
 
Inscription : juillet 2006
Messages : 25
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 25
Points : 6
Points : 6
En fait c'est la cumul de plusieurs lignes que je souhaite faire.
Exemple:
id prop1 prop2 ... prop N quantité montant1
000001xxxxxxxyyyyy ... zzzzzzz0000033 0000436
000002bbbbbbyyyyy ... cccccc0000026 0000324
000003xxxxxxxyyyyy ... zzzzzzz0000010 0000203

etc.

pour ces trois lignes, on voit que les lignes 1 et 3 portent la même combinaison de critère et donc on obtiendrait l'agrégation suivante :
id prop1 prop2 ... prop N quantité montant1
000001xxxxxxxyyyyy ... zzzzzzz0000043 0000639
000002bbbbbbyyyyy ... cccccc0000026 0000324

voila voila.. j'espèer que c'est plus clair!
desbrandesq est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2007, 12h55   #4
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 546
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 546
Points : 7 776
Points : 7 776
en faitsant des tableaux de variables ça doit pouvoir se faire aussi.

j'ai pas le temps de tester de suite mais je pense qu'en selectionnant X valeurs dans un tableau de toto[X]

on doit pouvoir ensuite faire l'equivalant de
total=total+toto[X]
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h51.


 
 
 
 
Partenaires

Hébergement Web