PDA

Visualizza versione completa : [SQL Access] Aiuto per una subquery


Semi.genius
24-06-2006, 14.23.51
Sono un po' di newbie in access :inn: speriamo sappiate aiutarmi..

Ho due tabelle semplici: Agenti e Movimenti. C'è una relazioni uno a molti tra Agenti e Movimenti. La tabella agenti è formata dalle colonne:
ID_Agente, chiave primaria
Nome
Cognome
Mentre la tabella movimenti è foramta da queste colonne:
ID_mov
ID_Agente, collegata a ID_Agente di Agenti
Fattura, (in valuta)

Facendo un esempio con le due tabelle..questa è la tabella Agenti
************************
*ID_Agente Nome Cognome
*
* 1 Pinco Pallino
* 2 Tizio Caio
* 3 Boh Boh
************************
Questa è quella movimenti
************************
*ID_Mov ID_Agente Fatturato
*
* 1 1 1€
* 2 1 2€
* 3 1 3€
* 4 2 1€
* 5 2 2€
* 6 3 1€
************************

Arriviamo al dunque..Devo riuscire a scrivere una query che visualizza QUANTI agenti hanno un fatturato maggiore della media di tutti i fatturati presenti nella tabella movimento.
Nel mio caso, la media di tutti i fatturati è circa 1,6666.. ecc. €. La somma dei fatturato di Pinco è 6€, quella di Tizio è 3€ e quella di Boh è 1€...quindi Boh è escluso e quindi in video deve comparire 2.

Devo fare questa query in SQL (tramite utilizzo di subquery) di Access senza usare linguaggi esterni o sintassi MySQL non compatibile...chi mi aiuta in questo putt...ehm. casino? :inn:

Semi.genius
24-06-2006, 18.32.30
è così irrisolvibile il problema, ragazzi? :crying:

Semi.genius
24-06-2006, 20.52.22
Ho risolto, potete anche chiudere:p

Dav82
24-06-2006, 21.00.23
Dicci come hai risolto, su su :o ;)

Semi.genius
24-06-2006, 21.14.11
Beh..

Era una query da fare per la scuola..ecco:

SELECT Count(Agenti.ID_agente) AS [Numero Agenti:]
FROM [SELECT Agenti.ID_agente,SUM(Fattura) FROM Agenti INNER JOIN Movimenti ON Movimenti.ID_Agente=Agenti.ID_Agente GROUP BY Agenti.ID_Agente HAVING SUM(Fattura)>(SELECT AVG(Fattura) FROM movimenti)]. AS Tabella_riassuntiva;

Un po' incasinato ma sembra andare:p

Dav82
24-06-2006, 21.18.29
Direi che anda (voce del verbo "andare" :o)


(mi spiace non esser passato qua prima... oggi solo pensare di accendere il pc mi metteva ancor più caldo :p)

Semi.genius
24-06-2006, 21.21.41
Direi che anda (voce del verbo "andare" :o)


(mi spiace non esser passato qua prima... oggi solo pensare di accendere il pc mi metteva ancor più caldo :p)

No Problem...anche se ci sono andato un po' a culo perché non sapevo fare le subquery:p..ma visto che ormai lo hai accesso il PC, vorrei chiederti perché Access mette il punto prima di as [Tabella riassuntiva:] ...


(era meglio che lo tenevi spento:D:D:D)

dave4mame
24-06-2006, 21.29.36
beh.. l'sql di access è "standard microsoft" mica standard normale :)

Dav82
24-06-2006, 21.31.14
Sinceramente non lo so :mm: e non me n'ero mai accorto! :mm:

Semi.genius
24-06-2006, 21.35.47
beh.. l'sql di access è "standard microsoft" mica standard normale :)

E quando mai una cosa della Microsoft è normale?:D

Sinceramente non lo so :mm: e non me n'ero mai accorto! :mm:

Sono troppo curioso e ficcanaso :inn: ..ehm..è più che altro è se il prof me lo chiede, non so cosa dirli... :wall:


Beh, gli dirò che è un X-files made by Microsoft:p

LoryOne
12-07-2006, 17.42.39
Beh, la risposta è semplice:
Microsoft ha programmato Access in modo da sgammare gli studenti furbi che usano le autocomposizioni per creare le query.
Non avresti avuto la necessità di aggiungerlo il punto, altrimenti.
Di la verità malefico: Hai usato l'autocomposizione o l'hai scritta a mano la query :D ?

Dav82
12-07-2006, 17.58.40
Ma LOL Lory :D :p