Comment ouvrir () uniquement des colonnes spécifiques<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Bonjour, si j'ai une grande table de données JMP, existe-t-il un moyen d'envoyer un message à Open() qui ne se charge que dans des colonnes spécifiques ?Cela réduirait considérablement le temps de chargement d'un fichier volumineux.Par exemple si j'ai ce fichier :
Ouvrir("c:\temp\fruit.jmp");
Disons que fruit.jmp contient 200 colonnes de différents types de fruits et j'aurai peut-être besoin d'accéder à tous ces types de fruits, mais pour le moment, je n'ai besoin de charger que dans une colonne "Apple", réduisant ainsi le temps de chargement du fichier.Faire un sous-ensemble () ultérieur va à l'encontre de l'objectif, car le fichier de données volumineux doit d'abord être ouvert et l'objectif ici est de réduire les temps de chargement des fichiers en ne chargeant que dans les colonnes nécessaires.J'espérais que quelque chose comme ce qui suit fonctionnerait, ce qui n'est bien sûr pas le cas:
Ouvrir("c:\temp\fruit.jmp",columns("Pomme"));
suggestions?merci... dj
Comment ouvrir () uniquement des colonnes spécifiquesOk, je pense que j'ai peut-être compris cela.J'ai finalement trouvé un article utile du passé.J'ai recherché tous les attributs Open() dans le guide de script et il n'y a aucun moyen de le faire sans utiliser la commande Open Database() à la place.Fondamentalement, il suffit de convertir d'abord la source .jmp en un fichier .xls.Je voulais juste poster ceci au cas où cela aiderait quelqu'un d'autre.DJ
http://communities.sas.com/message/50379#50379
Alors d'abord, je convertis le "fruit.jmp" en un "fruit.xls".De cette façon, je peux faire en sorte que JSL utilise la connexion Excel ODBC DSN et un peu de code SQL pour extraire uniquement la ou les colonnes dont j'ai besoin.Alors disons que ma table de données Excel a une feuille de calcul "Sheet1" et à l'intérieur une colonne appelée "Apple" et je veux seulement charger cette colonne et aucune des autres dans cette feuille de calcul afin de gagner du temps.Ce code ci-dessous fait l'affaire:
dt=Ouvrir la base de données("DSN=Fichiers Excel;DBQ=c:\temp\fruit.xls;DriverId=790;MaxBufferSize=2048;PageTimeout=5;","SELECT Apple FROM `Sheet1$`" , "Table des fruits" );