2017-08-18 3 views
1

Je dois saisir des lignes dans une base de données contenant un élément qui correspond à l'un des 175 000 éléments et convertir les résultats en un fichier csv (que je analyserai plus tard avec le script python). Quelques problèmes qui viennent à l'esprit sont les suivants: [pouvez-vous vraiment entrer une liste d'éléments dans une requête sql de workbench (il n'y a pas assez de mémoire pour le copier)? le réseau prendrait-il en charge un transfert de données aussi important? D'autres choses que je ne sais pas?] Quelle serait une façon intelligente d'interroger et de récupérer cette grande quantité de données? J'utilise MySql Workbench sous Windows sur un serveur Windows, mais je suis prêt à essayer une meilleure option d'interface.Exécution d'une requête volumineuse dans mysql

simple (mais pas pratique dans ce cas) le format de requête:

select * from database where date>='2017-06-01 00:00:00' and date<='2017-07-01 00:00:00' and instr in ('ab123', 'azx0456', 'rtpz888') 

* il devrait y avoir environ 10.000.000 enregistrements (ou lignes) entre ces deux dates spécifiées. * le « instr en (...) » partie serait en fait besoin d'une liste d'environ 175 000 objets uniques

Répondre

0
  1. importer le filtre instr dans une table séparée, par exemple le tableau xx, nom de la colonne instr
  2. select * from database where date>='2017-06-01 00:00:00' and date<='2017-07-01 00:00:00' and instr in (select instr from xx)

Je n'ai pas vraiment utilisé sql depuis un moment. Cela devrait être bon. la partie exportatrice select * from database into outfile "aa.txt" where ....

+0

Une jointure pourrait être amusante – Strawberry

+0

merci pour votre suggestion, mais il y a un problème: je n'ai jamais créé/édité quoi que ce soit dans une base de données. Je vais essayer de cette façon, mais ce faisant, je dois apprendre à créer correctement cette nouvelle table distincte, puis j'espère que tout va bien ensemble. Je vais vous faire savoir comment cela a fonctionné – teachamantofish

+0

cela a aidé, merci – teachamantofish