|
| HOMEPAGE | INDICE FORUM | REGOLAMENTO | ::. | NEI PREFERITI | .:: | RSS Forum | RSS News | NEWS web | NEWS software | |
| PUBBLICITA' | | | ARTICOLI | WIN XP | VISTA | WIN 7 | REGISTRI | SOFTWARE | MANUALI | RECENSIONI | LINUX | HUMOR | HARDWARE | DOWNLOAD | | | CERCA nel FORUM » | |
![]() |
#1 |
Gold Member
WT Expert
Registrato: 23-06-2004
Loc.: Cagliari
Messaggi: 13.333
![]() ![]() ![]() ![]() |
[Access 2007] Query annidate
ho bisogno di fare una query di questo tipo (esempio un po' "scolastico"): Codice:
SELECT DISTINCT sede.citta FROM sede JOIN impiegato ON codice=sede WHERE (nome,sede) IN ( SELECT corso.nome, sede FROM corso JOIN cliente ON corso.cliente=cliente.nome GROUP BY corso.nome, sede, citta HAVING COUNT(*) > 1 ) Qualche suggerimento per riuscire nell'impresa?
___________________________________
La risposta è dentro di te... e però, è sbagliata! |
![]() |
![]() |
![]() |
#2 |
Gold Member
Registrato: 20-05-2004
Loc.: Perugia
Messaggi: 4.188
![]() |
Rif: [Access 2007] Query annidate
FOR
___________________________________
Ogni computer ha la sua storia. Dermatite Seborroica? www.dermatiteseborroica.info |
![]() |
![]() |
![]() |
#3 |
Gold Member
WT Expert
Registrato: 23-06-2004
Loc.: Cagliari
Messaggi: 13.333
![]() ![]() ![]() ![]() |
Rif: [Access 2007] Query annidate
Perdonami ma... non ho capito il suggerimento.
![]()
___________________________________
La risposta è dentro di te... e però, è sbagliata! |
![]() |
![]() |
![]() |
#4 |
Gold Member
WT Expert
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.505
![]() ![]() ![]() |
Rif: [Access 2007] Query annidate
Credo che da questo sito (http://www.w3schools.com/sql/default.asp) si possa trarre ispirazione...io ci fo un salto ogni tanto.
![]() ps: E' possibile ricavare la corretta sintassi della stringa SQL in modalità struttura quando il risultato ottenuto è quello sperato: Una volta create,popolate e relazionate le varie tabelle, i join(inner, left o right) vengono creati automaticamente in base ai parametri di filtro imposti nella maschera di struttura Query ed in accordo con le relazioni 1-1/1-molti/molti-molti. A questo punto, ti basta importare la stringa ricavata e farla eseguire al motore. |
![]() |
![]() |
![]() |
#5 |
Gold Member
Registrato: 20-05-2004
Loc.: Perugia
Messaggi: 4.188
![]() |
Rif: [Access 2007] Query annidate
FOR al posto di WHERE
___________________________________
Ogni computer ha la sua storia. Dermatite Seborroica? www.dermatiteseborroica.info |
![]() |
![]() |
![]() |
#6 |
Gold Member
WT Expert
Registrato: 23-06-2004
Loc.: Cagliari
Messaggi: 13.333
![]() ![]() ![]() ![]() |
Rif: [Access 2007] Query annidate
@LoryOne
Grazie del link ![]() Stavolta però temo che il problema sia Access e non l'SQL in se. La query scritta sopra dovrebbe di norma funzionare, ma ad Access non piace il fatto che metta due attributi di confronto nella clausola WHERE, e li nasce il problema. @RunDLL Capito. Ho provato ora e sembra non riconosca il comando "FOR", difatti mi da errore nella clausola FROM.
___________________________________
La risposta è dentro di te... e però, è sbagliata! |
![]() |
![]() |
![]() |
#7 |
Gold Member
WT Expert
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.505
![]() ![]() ![]() |
Rif: [Access 2007] Query annidate
...forse il problema è dov'è posta la parentesi chiusa.
Poi prova a mettere in AND sede e nome, cioè WHERE (sede in [] AND nome in []) |
![]() |
![]() |
![]() |
#8 |
Gold Member
WT Expert
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.505
![]() ![]() ![]() |
Rif: [Access 2007] Query annidate
|
![]() |
![]() |
![]() |
#9 | |
Gold Member
WT Expert
Registrato: 23-06-2004
Loc.: Cagliari
Messaggi: 13.333
![]() ![]() ![]() ![]() |
Rif: [Access 2007] Query annidate
Quota:
La prova era diversa però, avevo semplicemente messo l'AND tra i due campi e non impostato la cosa come due clausole differenti. Il problema con le clausole differenti, come nel tuo esempio, è che non si ottiene lo stesso risultato: a me serve che il confronto sia fatto su entrambi i capi contemporaneamente, ossia i valori devono coincidere sulla stessa tupla.
___________________________________
La risposta è dentro di te... e però, è sbagliata! |
|
![]() |
![]() |
![]() |
#10 |
Gold Member
WT Expert
Registrato: 23-06-2004
Loc.: Cagliari
Messaggi: 13.333
![]() ![]() ![]() ![]() |
Rif: [Access 2007] Query annidate
Ok, sto facendo delle prove usando la clausola EXISTS
Codice:
WHERE EXISTS ( .... SubQuery... Ora mi studio meglio la clausola, se qualcuno ha suggerimenti, dica pure! EDIT: ovviamente non da i risultati sperati, EXISTS non è così immediato da usare nel mio caso. Faccio ancora qualche prova. RI-EDIT: come immaginavo, non è utilizzabile, costringe Access a fare troppe subquery correlate, è troppo pensante insomma.
___________________________________
La risposta è dentro di te... e però, è sbagliata! |
![]() |
![]() |
![]() |
Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 ospiti) | |
Strumenti discussione | |
|
|
![]() |
||||
Discussione | Autore discussione | Forum | Risposte | Ultimo messaggio |
[Access 2007] Aggiungere contatore con i record ordinati secondo un campo esistente | borgata | Office suite | 15 | 25-10-2012 21.29.53 |
[Access 2007] Campi più volte non presenti in una seconda tabella. | realtebo | Office suite | 2 | 16-10-2009 13.51.47 |
[Access] Aiuto per query | nicx82 | Office suite | 0 | 29-07-2009 15.33.48 |
[Access 2K] Un aiuto per stampa query usando un report | Fat George | Office suite | 2 | 11-12-2008 17.02.26 |
[Access 2007] Aggiornamento di un valore di un campo | simo04 | Office suite | 1 | 01-12-2008 10.59.06 |