Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Creare una query da altre query
sabato 11 novembre 2006 - 15.56
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
maxtoni
Profilo
| Newbie
3
messaggi | Data Invio:
sab 11 nov 2006 - 15:56
Il problema è il seguente:
devo creare una query basata su due tabelle e altre 4 query (che a loro volta si basano su 2 tabelle)
in access riesco tranquillamente mettendo in relazione fra loro tabelle e query esempio:
SELECT linea.linea, viaggio.viaggio, Query1.SommaDiPAX AS pax1, Query2.SommaDiPAX AS pax2, Query3.SommaDiPAX AS pax3, Query4.SommaDiPAX AS pax4, viaggio.id_viaggio
FROM ((((linea LEFT JOIN Query2 ON linea.id_linea = Query2.id_linea) LEFT JOIN Query3 ON linea.id_linea = Query3.id_linea) INNER JOIN viaggio ON linea.id_viaggio = viaggio.id_viaggio) LEFT JOIN Query4 ON linea.id_linea = Query4.id_linea) LEFT JOIN Query1 ON linea.id_linea = Query1.id_linea
GROUP BY linea.linea, viaggio.viaggio, Query1.SommaDiPAX, Query2.SommaDiPAX, Query3.SommaDiPAX, Query4.SommaDiPAX, viaggio.id_viaggio
HAVING (((viaggio.id_viaggio)="7"));
le query create sono query1, query2, query3, query4 e le tabelle linea e viaggio
il problema è come riuscire a tradurre il codice in vb.net 2003 ?
Dim cmd3 As New OdbcCommand("SELECT linea.linea, viaggio.viaggio, Query1.SommaDiPAX AS pax1, Query2.SommaDiPAX AS pax2, Query3.SommaDiPAX AS pax3, Query4.SommaDiPAX AS pax4, viaggio.id_viaggio FROM ((((linea LEFT JOIN Query2 ON linea.id_linea = Query2.id_linea) LEFT JOIN Query3 ON linea.id_linea = Query3.id_linea) INNER JOIN viaggio ON linea.id_viaggio = viaggio.id_viaggio) LEFT JOIN Query4 ON linea.id_linea = Query4.id_linea) LEFT JOIN Query1 ON linea.id_linea = Query1.id_linea GROUP BY linea.linea, viaggio.viaggio, Query1.SommaDiPAX, Query2.SommaDiPAX, Query3.SommaDiPAX, Query4.SommaDiPAX, viaggio.id_viaggio HAVING (((viaggio.id_viaggio)=""7""))", cn)
ma ovviamente non funziona in quanto nel mio database sql non ci sono tabelle che si chiamano query1, query2, query3, query4
qualcuno mi può aiutare?
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
sab 11 nov 2006 - 16:56
>ma ovviamente non funziona in quanto nel mio database sql non
>ci sono tabelle che si chiamano query1, query2, query3, query4
Che significa questa frase?
Cos'è il "mio database sql"?
Se da VB 2003 ti connetti allo stesso database Access le query saranno presenti pertanto la tua SELECT deve funzionare!
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
maxtoni
Profilo
| Newbie
3
messaggi | Data Invio:
sab 11 nov 2006 - 17:22
scusami,
non ti ho detto che sto lavorando su un file mysql e ho fatto una prova esportando il database in access. Devo produrre lo stesso codice per mysql
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
sab 11 nov 2006 - 18:01
>non ti ho detto che sto lavorando su un file mysql e ho fatto
>una prova esportando il database in access. Devo produrre lo
>stesso codice per mysql
Non conosco MySQL, ma leggendo il manuale vedo che la versione 5.0 ha introdotto le viste:
http://dev.mysql.com/doc/refman/5.0/en/views.html
A questo punto non devi fare altro che creare per ogni query Access una vista MySQL.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
maxtoni
Profilo
| Newbie
3
messaggi | Data Invio:
sab 11 nov 2006 - 18:23
ti ringrazio, ma il problema ora è creare le viste come le query.
inoltre io uso vb 2003, non so se le supporta
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
sab 11 nov 2006 - 19:24
>ti ringrazio, ma il problema ora è creare le viste come le query.
>
>inoltre io uso vb 2003, non so se le supporta
Ma che c'entra VB con MySQL?!
Le viste devi crearle in MySQL utilizzando il comando CREATE VIEW nomeVista ed incollando la query di SELECT delle query Access (verificando la compatibilità dei comandi Jet-SQL con il dialetto SQL di MySQL).
Te l'ho detto, non conosco MySQL ma sicuramente esisterà un tool grafico o command line che ti permetterà di sottomettere dei comandi SQL all'engine.
Facendo una velocissima ricerca in Google specificando "mysql client tools" il primo link fa riferimento proprio al "MySQL Command-Line Tool":
http://dev.mysql.com/doc/refman/5.0/en/mysql.html
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !