Aller au contenu
Korben, roi d’internet, logo bébé avec des lunettes en mode thug life

QueryCSV – Faites de requêtes SQL dans vos fichiers CSV

Si vous êtes contraint de bosser uniquement sur de la data stockées dans des fichiers CSV, voici un utilitaire qui va vous faire gagner pas mal de temps.

QueryCSV est une application en ligne de commande qui permet d’interroger des fichiers CSV en utilisant une syntaxe similaire à SQL. Disponible pour divers systèmes d’exploitation, cette appli vous permet d’extraire des données spécifiques à partir de n’importe quel fichiers CSV en utilisant tout simplement des requêtes.

Prenons par exemple le cas où vous avez un fichier CSV contenant des données de ventes et que vous voulez savoir combien d’unités d’un produit spécifique ont été vendues dans une certaine région. Avec QueryCSV, il vous suffit d’exécuter une requête en ligne de commande pour obtenir rapidement les informations dont vous avez besoin.

Pour ceux qui s’intéressent aux fichiers CSV et à leur manipulation, sachez que l’auteur de QueryCSV a également créé différentes versions pour divers systèmes d’exploitation même les plus anciens, et qu’il a ajouté la conversion entre Unicode et les jeux de caractères pour chacun des systèmes cible.

Pour utiliser QueryCSV sur votre propre machine, vous pouvez consulter le dépôt GitHub du projet et télécharger la version correspondante à votre système d’exploitation. Une fois téléchargée, vous pouvez commencer à exécuter des requêtes sur vos fichiers CSV.

Voici un exemple de csv contenant une liste d’employés et leur âge :

Nom, Département
Rafferty,31
Jones,33
Heisenberg,33
Robinson,34
Smith,34
Williams,""

Et un departments.csv avec le contenu suivant :

DépartementID,DépartementNom
31,Ventes
33,Ingénierie
34,Personnel de bureau
35,Marketing

Créez ensuite un fichier appelé getEngineers.qry qui sera utilisé pour la requête et spécifiez y les données que vous souhaitez récupérer avec la jointure qui va bien. Ici on cherche a lister le nom des employés avec leur service :

select a.lastName as surname, b.DepartmentName as department
from 'employees.csv' as a
join 'departments.csv' as b on b.DepartmentID = a.DepartmentID
where a.DepartmentID = 33

Enfin, en ligne de commande, exécutez la requête sur les fichiers de données à l’aide de la commande suivante :

querycsv getEngineers.qry

Et voilà, vous obtiendrez alors un résultat semblable à celui-ci :

nom de famille, département
Jones, Ingénierie
Heisenberg, Ingénierie

Plutôt cool non ?

N’hésitez pas à essayer QueryCSV en cliquant ici ! Gain de temps assuré !


Les articles du moment