faire un join sur plusieurs champs à la fois? - Shell/Batch - Programmation
Marsh Posté le 01-11-2006 à 21:50:14
join ne peut faire la jointure que sur un seul champ.
Voici une solution simple utilisant awk (les fichiers n'on pas besoin d'être triés sur les champs de jointure) :
awk ' |
Marsh Posté le 02-11-2006 à 11:38:08
Ca marche! Et avec des performances extra en prime!
Merci beaucoup!
Marsh Posté le 31-10-2006 à 18:47:33
Bonjour!
Je cherche désespérément à faire un join de 2 fichiers, dont les 2 premiers champs doivent être identiques.
J'ai essayé des commandes du style:
join -j 1 -j 2 fichier1 fichier2
mais ça ne marche pas, j'ai l'impression que la 2e condition est tout bonnement ignorée...
Est-il possible de faire un join sur plusieurs champs à la fois?
Mon but est de "filtrer" le fichier1 avec le fichier2 (qui ne contient que les 2 colonnes servant de filtre), et ne récupérer que les lignes dont les 2 premières colonnes figurent dans une ligne du fichier2. Quelqu'un aurait-il éventuellement une autre piste à me proposer? (sachant que j'ai des contraintes de performance...)
Merci d'avance!