Risultati da 1 a 2 di 2
-
29-09-2009, 11:40 #1
- Data Registrazione
- Sep 2009
- Messaggi
- 1
Esportazione problematica tabella access in csv.
Salve a tutti,
ho necessità di esportare una tabella creata con una query in un formato .csv ma il procedimento che adotto,pur se banale, non mi restituisce quanto mi aspetterei di ottenere.
Ho fatto diversi tentativi ed ora non ho più idea di cosa ancora tentare,confido nel vostro aiuto per risolvere questo problema.
Cerco di spiegare il tutto per bene.
La query che faccio girare (make table query) crea una tabella che ha come prime due colonne il campo Iterazione e Periodo che funzionano come segue
Iterazione Periodo
1 0
1 1
1 2
.. ..
1 360
2 0
2 1
2 2
.. ..
2 360
3 0
3 1
.. ..
e così via fino a
1000 360
Ora,si tratta evidentemente di un db di 361000 righe con 35 colonne totali.
E' mia necessità che la tabella esportata mantenga l'ordinamente riportato nelle prime due colonne (ed ovviamente le celle associate a queste nelle altre).
La tabella creata dalla query mantiene l'ordinamento,tuttavia una volta esportata in csv (per farlo uso il procedimento :tasto destro- sulla tabella in access ->esporta --> etc. ) perde l'ordinamento e così quando vado ad aprire il file csv,importandolo nuovamente in access,mi trovo ad avere per le prime due colonne,un ordinamento che non è più quello della tavola che ho creato. Così mi capita di avere ad esempio:
Iterazione Periodo
430 33
430 34
1 25
1 26
etc etc
Riporto di seguito il tipo di quey che vado ad utilizzare:
SELECT [Database].ID, [Database].["iterazione"] AS iterazione, [Database].["periodo"] AS periodo, [Database].["Value_a"] AS Value_b, [Database].["VALUE_C"], 1 AS 0y, [Database].["1yr"] AS 1y, [Database].[“2yr"] AS 2y, [Database].[“3yr"] AS 3y, [Database].[“4yr"] AS 4y, [Database].[“5yr"] AS 5y, [Database].[“6yr"] AS 6y, [Database].[“7yr"] AS 7y, [Database].[“8yr"] AS 8y, [Database].[“9yr"] AS 9y, [Database].[“10yr"] AS 10y, [Database].[“11yr"] AS 11y, [Database].[“12yr"] AS 12y, [Database].[“13yr"] AS 13y, [Database].[“14yr"] AS 14y, [Database].[“15yr"] AS 15y, [Database].[“16yr"] AS 16y, [Database].[“17yr"] AS 17y, [Database].[“18yr"] AS 18y, [Database].[“19yr"] AS 19y, [Database].[“20yr"] AS 20y, [Database].[“21yr"] AS 21y, [Database].[“22yr"] AS 22y, [Database].[“23yr"] AS 23y, [Database].[“24yr"] AS 24y, [Database].[“25yr"] AS 25y, [Database].[“26yr"] AS 26y, [Database].[“27yr"] AS 27y, [Database].[“28yr"] AS 28y, [Database].[“29yr"] AS 29y, [Database].[“30yr"] AS 30y, (1+[Database]!["VALUE1"]/100)^(1/12)-1 AS value2 INTO [TAVOLA 1000]
FROM [Database]
WHERE ((([Database].["periodo"])<361))
ORDER BY [Database].ID;
La procedura in sè mi sembra banale,tuttavia non riesco a venirne a capo.Qualcuno avrebbe qualche consiglio?
Grazie infinte per ogni eventuale contributo.
-
30-09-2009, 00:12 #2
Per quanto vedo, l'ordinamento è per ID e quindi non è mai ordinato come vuoi, a meno che ID non sia un campo contatore che parte da 1 nel momento che inserisci i record nell'ordine desiderato.
Cerca prima di semplificare e debuggare la query. I nomi dei campi non vanno messo fra doppie virgolette. Ti conviene inoltre lavorare a tappe, i trasferimenti con calcoli sono difficili da gestire.
INSERT nomicampi1 INTO destinazione SELECT nomicampi2 FROM sorgente ORDER BY iterazione, periodo
Dove:
nomecampi1 è la lista dei campi in destinazione
nomecampi2 è la lista dei campi in sorgente
Ad esempio:
INSERT [1y], [2y] INTO destinazione SELECT [1yr], [2yr] FROM sorgente ORDER BY iterazione, periodo
In ogni caso eviterei usare nomi di campi che richiedono [], perché nella norma sono problematici. In più, dati in parallelo non si mettono nel database in un'unica tabella. Si crea una colonna aggiuntiva dove si indica l'anno. La tabella risultante ha quindi una colonna dell'anno e una che contiene i dati. E' più lunga ma di gran misura più veloce e flessibile. La struttura parallela è lenta e inaffidabile, oltre a presentare più svariati problemi di manipolazione dati.Giovanni
http://www.trimelli.com/
Per favore non mandatemi PM, ma scrivete sul forum. Vi sarà risposto prima.
Discussioni Simili
-
Access e Database forum
Di Frankysdc nel forum Agorà di vBulletinRisposte: 0Ultimo Messaggio: 27-01-2009, 11:20 -
Manipolare i Campi in Access
Di pippo2008 nel forum Agorà di vBulletinRisposte: 6Ultimo Messaggio: 24-05-2008, 20:32 -
Access MySQL
Di GuidoM nel forum Agorà di vBulletinRisposte: 5Ultimo Messaggio: 19-06-2007, 09:43 -
Problemi con PHP e ACCESS
Di paopie nel forum Agorà di vBulletinRisposte: 4Ultimo Messaggio: 14-04-2007, 02:47 -
Mysql e Access
Di rupert.giles nel forum Agorà di vBulletinRisposte: 1Ultimo Messaggio: 09-02-2007, 10:17
Segnalibri