Forum by laureateci.it
[ Home | REGOLE FORUM | Tutti i blog | Profilo | Registrati | CHAT | Discussioni Attive | Discussioni Recenti | Segnalibro | Msg privati | Sondaggi Attivi | Utenti | Download Informatica | Download ICD | Download TPS | Download Magistrale | Download Specialistica | Giochi | Cerca nel web | cerca | faq | RSS ]
Nome Utente:
Password:
Salva Password
Password Dimenticata?

 Tutti i Forum
 Laurea Specialistica In Informatica
 I ANNO
 query dinamiche basi di dati 2
 Nuova Discussione  Nuovo Sondaggio Nuovo Sondaggio
 Rispondi
 Versione Stampabile Bookmark this Topic Aggiungi Segnalibro
I seguenti utenti stanno leggendo questo Forum Qui c'è:
Pagina Successiva
Autore Discussione Precedente Discussione Discussione Successiva
Pagina: di 2

degirot
Nuovo Utente



Inserito il - 07/04/2008 : 12:14:17  Mostra Profilo  Visita l'Homepage di degirot Invia a degirot un Messaggio Privato  Rispondi Quotando
salve, qualcuno può darmi una mano circa la realizzazione delle query dinamiche che vuole il professore. nonostante la spiegazione non ho capito assolutamente come funzionano. aiutatemi!!!! grazie

Chilavert
admin

vacca


Regione: Puglia
Prov.: BA
Città: Bari


Inserito il - 07/04/2008 : 12:43:48  Mostra Profilo  Visita l'Homepage di Chilavert Invia a Chilavert un Messaggio Privato  Rispondi Quotando
Citazione:
Messaggio inserito da degirot

salve, qualcuno può darmi una mano circa la realizzazione delle query dinamiche che vuole il professore. nonostante la spiegazione non ho capito assolutamente come funzionano. aiutatemi!!!! grazie



Strano che non l'hai capito. È così comprensibile...
...sinceramente, mai nessuno l'ha capito, questa è la realtà.

E' un bene per il Prof. Xxxxxxx che sappia con chi ha a che fare.
Pensa a studiare e non agli esempi, o ad altre strade per così dire,
che questa volta mi sa che non attacca. [cit.]

Tutti professori dall'esterno, e poi parlano persone che per prendere un voto decente
ripetono l'esame 30 volte e poi fanno i sapientoni con chi segue la prima volta vedi chilavert [cit.]
Torna all'inizio della Pagina

Chilavert
admin

vacca


Regione: Puglia
Prov.: BA
Città: Bari


Inserito il - 08/04/2008 : 20:01:26  Mostra Profilo  Visita l'Homepage di Chilavert Invia a Chilavert un Messaggio Privato  Rispondi Quotando
Dato che mi hai mandato un messaggio privato chiedendomi come agire, ma che la mia risposta potrebbe essere utile anche ad altre persone, riporto la mia risposta anche sul 3D.

Per sommi capi, quello che il professore richiede è di effettuare una query su qualsiasi attributo di qualsiasi tabella del db.

In che ordine si compone la query:

1. Decidi quale funzione di aggregazione effettuare fra somma, minimo, massimo, conteggio, media
2. Selezioni su che tabella e su che attributo della stessa tabella effettuare la funzione di aggregazione

Esempio: SOMMA di IMPIEGATO.STIPENDIO

Tutto ciò deve essere dinamico, cioè se selezioni per esempio da un menù a tendina la tabella impiegato, in un altro menù a tendina ti compaiono i campi di quella tabella.

3. JOIN. Si possono selezionare, per esempio con dei radio button, 0, 1 o 2 join fra la tabella che hai scelto e le altre tabelle del database. Il mio gruppo ha ragionato nel seguente modo. Al primo passo, join=1, in un menù a tendina compaiono tutte le tabelle direttamente collegate alla tabella scelta all'inizio. Conseguentemente, scegliendo la tabella, compare il/i campi joinabili col campo selezionato al primo passo. Identicamente, al passo join=2, in un altro menù a tendina compaiono le tabelle direttamente collegate con la tabella scelta al passo 1.

Esempio: tabella iniziale = IMPIEGATO
join = 1 -> ti vengono fuori varie tabelle collegate ad IMPIEGATO, selezioni quella che ti interessa, esempio MANSIONE, e selezionandola ti verrà fuori il campo di join, esempio ID. Quindi il join potrebbe essere IMPIEGATO INNER JOIN MANSIONE ON IMPIEGATO.IDMANSIONE = MANSIONE.ID; al passo 2 è la stessa cosa, ma prendendo in considerazione la tabella MANSIONE.

4. CONDIZIONI DI QUERY. In questo caso, il prof vorrebbe quante si vogliono condizioni di query. Il consiglio è anche in questo caso selezionare 0, 1 o 2 condizioni. Le condizioni si applicano sulle tabelle scelte nei passi precedenti, quindi, se join=0 solo sulla tabella principale, se join=1 su due tabelle, se join=2 su tre tabelle. Dinamicamente, scegliendo da un menù a tendina la tabella, compaiono tutti i campi di quella tabella. Scegliendo il campo, si seleziona la condizione.

Esempio: condizione=1. Selezioni la tabella IMPIEGATO, il campo COGNOME e la condizione "= ROSSI". La condizione viene memorizzata.

Infine, si sceglie il tipo di grafico fra quelli predefiniti del linguaggio utilizzato.

Al clic del tasto "genera grafico" verrà composta la query, tenendo conto della funzione di aggregazione, delle tabelle interessate, delle condizioni. Generata la stringa della query, si da' in pasto al modulo in grado di generare un grafico.

E' un bene per il Prof. Xxxxxxx che sappia con chi ha a che fare.
Pensa a studiare e non agli esempi, o ad altre strade per così dire,
che questa volta mi sa che non attacca. [cit.]

Tutti professori dall'esterno, e poi parlano persone che per prendere un voto decente
ripetono l'esame 30 volte e poi fanno i sapientoni con chi segue la prima volta vedi chilavert [cit.]
Torna all'inizio della Pagina

degirot
Nuovo Utente



Inserito il - 09/04/2008 : 15:32:14  Mostra Profilo  Visita l'Homepage di degirot Invia a degirot un Messaggio Privato  Rispondi Quotando
grazie sei stato veramente MOLTO MOLTO gentile. Ma tutto questo deve essere fatto in Access??
Torna all'inizio della Pagina

Chilavert
admin

vacca


Regione: Puglia
Prov.: BA
Città: Bari


Inserito il - 09/04/2008 : 15:33:05  Mostra Profilo  Visita l'Homepage di Chilavert Invia a Chilavert un Messaggio Privato  Rispondi Quotando
Citazione:
Messaggio inserito da degirot

grazie sei stato veramente MOLTO MOLTO gentile. Ma tutto questo deve essere fatto in Access??



Noi abbiamo lavorato su Access ma presumo tu abbia libertà di fare ciò che vuoi.

E' un bene per il Prof. Xxxxxxx che sappia con chi ha a che fare.
Pensa a studiare e non agli esempi, o ad altre strade per così dire,
che questa volta mi sa che non attacca. [cit.]

Tutti professori dall'esterno, e poi parlano persone che per prendere un voto decente
ripetono l'esame 30 volte e poi fanno i sapientoni con chi segue la prima volta vedi chilavert [cit.]
Torna all'inizio della Pagina

degirot
Nuovo Utente



Inserito il - 09/04/2008 : 16:57:17  Mostra Profilo  Visita l'Homepage di degirot Invia a degirot un Messaggio Privato  Rispondi Quotando
avete fatto riferimento a qualche guida o manuale in particolare. io non sono molto pratico di programmazione access. grazie
Torna all'inizio della Pagina

Chilavert
admin

vacca


Regione: Puglia
Prov.: BA
Città: Bari


Inserito il - 09/04/2008 : 16:59:49  Mostra Profilo  Visita l'Homepage di Chilavert Invia a Chilavert un Messaggio Privato  Rispondi Quotando
Citazione:
Messaggio inserito da degirot

avete fatto riferimento a qualche guida o manuale in particolare. io non sono molto pratico di programmazione access. grazie



ehm, sinceramente ho soltanto googlato un po', ma non chiedermi siti, dopo la verbalizzazione ho bruciato tutto :)

E' un bene per il Prof. Xxxxxxx che sappia con chi ha a che fare.
Pensa a studiare e non agli esempi, o ad altre strade per così dire,
che questa volta mi sa che non attacca. [cit.]

Tutti professori dall'esterno, e poi parlano persone che per prendere un voto decente
ripetono l'esame 30 volte e poi fanno i sapientoni con chi segue la prima volta vedi chilavert [cit.]
Torna all'inizio della Pagina

degirot
Nuovo Utente



Inserito il - 09/04/2008 : 18:34:21  Mostra Profilo  Visita l'Homepage di degirot Invia a degirot un Messaggio Privato  Rispondi Quotando
anche i file che avete consegnato???
Torna all'inizio della Pagina

Chilavert
admin

vacca


Regione: Puglia
Prov.: BA
Città: Bari


Inserito il - 09/04/2008 : 18:35:00  Mostra Profilo  Visita l'Homepage di Chilavert Invia a Chilavert un Messaggio Privato  Rispondi Quotando
Citazione:
Messaggio inserito da degirot

anche i file che avete consegnato???



Quelli non ce li ho + causa rottura HD

E' un bene per il Prof. Xxxxxxx che sappia con chi ha a che fare.
Pensa a studiare e non agli esempi, o ad altre strade per così dire,
che questa volta mi sa che non attacca. [cit.]

Tutti professori dall'esterno, e poi parlano persone che per prendere un voto decente
ripetono l'esame 30 volte e poi fanno i sapientoni con chi segue la prima volta vedi chilavert [cit.]
Torna all'inizio della Pagina

degirot
Nuovo Utente



Inserito il - 09/04/2008 : 19:26:10  Mostra Profilo  Visita l'Homepage di degirot Invia a degirot un Messaggio Privato  Rispondi Quotando
peccato, un esempio nella sezione download poteva essere di aiuto anche per coloro che dovranno affrontare l'esame. giro la richiesta agli altri in ascolto!!
Torna all'inizio della Pagina

degirot
Nuovo Utente



Inserito il - 10/04/2008 : 15:18:17  Mostra Profilo  Visita l'Homepage di degirot Invia a degirot un Messaggio Privato  Rispondi Quotando
in effetti non sarebbe più semplice utilizzare un linguaggio web (tipo asp o php) per gestire le interfacce??
Torna all'inizio della Pagina

degirot
Nuovo Utente



Inserito il - 15/05/2008 : 16:55:58  Mostra Profilo  Visita l'Homepage di degirot Invia a degirot un Messaggio Privato  Rispondi Quotando
problema::
selezionata la prima tabella e il relativo campo a cui applicare la funzione statistica (es. COUNT) si sceglie una delle tabelle collegate alla precedente ed anche il campo di join.
domanda: questo campo di join deve essere collegato necessariamente a quello scelto in partenza oppure no?? infatti non é detto che il campo scelto all'inizio sia proprio quello utilizzato per fare il join con la tabella, vero?? mi date una mano
grazie
Torna all'inizio della Pagina

degirot
Nuovo Utente



Inserito il - 19/05/2008 : 21:05:15  Mostra Profilo  Visita l'Homepage di degirot Invia a degirot un Messaggio Privato  Rispondi Quotando
nessuno cortesemente mi può dare una mano?? grazie
Torna all'inizio della Pagina

degirot
Nuovo Utente



Inserito il - 31/07/2008 : 15:26:50  Mostra Profilo  Visita l'Homepage di degirot Invia a degirot un Messaggio Privato  Rispondi Quotando
ripropongo il problema: qualcuno é riuscito a realizzare l'applicazione di data mining con query statistiche richiesta per questo esame?? vi chiedo aiuto per cortesia!!!!
Torna all'inizio della Pagina

Lamia
The Death of Reality is Coming

Stained_class


Regione: Puglia
Prov.: Bari
Città: Bari


Inserito il - 28/01/2009 : 23:13:02  Mostra Profilo  Visita l'Homepage di Lamia  Clicca per vedere l'indirizzo MSN di Lamia Invia a Lamia un Messaggio Privato  Rispondi Quotando
ma se nella query la select è sempre del tipo
select count
select sum
select avg etc. verrà sempre resituito un unico valore numerico (somma, media, minimo, etc.).
quindi, dico: che cosa dovrebbe essere rappresentato nel grafico???? un unico punto nello spazio?

http://www.antonioceci.com
"The further we go And older we grow The more we know The less we show" (primary)
...Politica? spero di abbandonare l'arca prima che affondi...
Torna all'inizio della Pagina

Micamalex
Utente giovane


Regione: Puglia
Prov.: Bari
Città: Terlizzi


Inserito il - 28/01/2009 : 23:36:15  Mostra Profilo  Visita l'Homepage di Micamalex Invia a Micamalex un Messaggio Privato  Rispondi Quotando
Infatti il prof. vuole che si scelga uno o due attributi di aggregazione, ossia si sceglie uno o due attributi per i quali aggregare i risultati, in particolare:
- se non si scelgono attributi di aggregazione, si ottiene un solo risultato da rappresentare;
- se si sceglie 1 attriubto di aggregazione si ottiene un vettore di risultati da rappresentare con una lista o grafici;
- se si scelgono 2 attributi di aggregazione si ottiene una tabella a 2 variabili da rappresentare con grafici a 3 dimensioni.


Lo scopo del lavoro è quello di guadagnarsi il tempo libero
Torna all'inizio della Pagina

Lamia
The Death of Reality is Coming

Stained_class


Regione: Puglia
Prov.: Bari
Città: Bari


Inserito il - 29/01/2009 : 00:18:36  Mostra Profilo  Visita l'Homepage di Lamia  Clicca per vedere l'indirizzo MSN di Lamia Invia a Lamia un Messaggio Privato  Rispondi Quotando
aa capito, quindi tipo:
0 attributiAggregazione -> x
1 attributiAggregazione -> y
2 attributiAggregazione -> z

e nel caso gli attributi di aggregazione (1) e/o (2) siano delle date, le si rappresenta associandole al valore numerico dato da min(), max() o count()? si fa scegliere all'utente oppure si sceglie count() di default?

grazie mille x la risposta e grazie mille a chilavert x quello che ha scritto: è utilissimo

http://www.antonioceci.com
"The further we go And older we grow The more we know The less we show" (primary)
...Politica? spero di abbandonare l'arca prima che affondi...
Torna all'inizio della Pagina

Micamalex
Utente giovane


Regione: Puglia
Prov.: Bari
Città: Terlizzi


Inserito il - 29/01/2009 : 10:49:40  Mostra Profilo  Visita l'Homepage di Micamalex Invia a Micamalex un Messaggio Privato  Rispondi Quotando
No aspetta credo tu abbia confuso tra funzioni di aggregazione ed attributi di aggregazione.

Ti riassumo in passi ciò che andremme fatto:

1) Si sceglie la funzione di aggregazione (sum, min, max, avg) da applicare su un attributo.

2) Si scelgono le CONDIZIONI (sarebbero le clausole del WHERE), ossia:
2.1) Si sceglie un primo attributo
2.2) Si sceglie una condizione di confronto (>,<,=,ecc.)
2.3) Si sceglie un secondo attributo(compatibile con il primo) o una costante.


3) Si scelgono le AGGREGAZIONI(che sarebbero i GROUP BY dell'SQL), ossia si sceglie uno o due attributi per i quali aggregare i risultati, in particolare:
- se non si scelgono attributi di aggregazione, si ottiene un solo risultato da rappresentare;
- se si sceglie 1 attriubto di aggregazione si ottiene un vettore di risultati da rappresentare con una lista o grafici;
- se si scelgono 2 attributi di aggregazione si ottiene una tabella a 2 variabili da rappresentare con grafici compatibili.

Quindi ad esempio la seguente query ti da il numero di dipendenti per dipartimento

SELECT COUNT(*) FROM DIPENDENTI,DIPARTIMENTO
WHERE ID_DIPENDENTI = ID_DIPARTIMENTO
GROUP BY NOME_DIPARTIMENTO

l'attributo di aggregazione usato è NOME_DIPARTIMENTO.

Quindi tu avrai come risultato un vettore di questo tipo:
DIPARTIMENTO_INFORMATICA - 200
DIPARTIMENTO_FISICA - 50
DIPARTIMENTO_MATEMATICA - 100

quindi i nomi dei dipartimenti li metti sull'asse delle x mentre i valori su quello delle y, ottenendo un grafico bidimensionale.

Se dovessi aggiungere un ulteriore attributo di aggregazione, ad es. UNIVERSITA allora otterresti una tabella

UNIVERSITA_BARI - DIPARTIMENTO_INFORMATICA - 200
UNIVERSITA_BARI - DIPARTIMENTO_FISICA - 50
UNIVERSITA_BARI - DIPARTIMENTO_MATEMATICA - 100

UNIVERSITA_LECCE - DIPARTIMENTO_INFORMATICA - 150
UNIVERSITA_LECCE - DIPARTIMENTO_FISICA - 100
UNIVERSITA_LECCE - DIPARTIMENTO_MATEMATICA - 120

in questo caso dovrai costruire un grafico a 3 dimensioni.


Lo scopo del lavoro è quello di guadagnarsi il tempo libero
Torna all'inizio della Pagina

Lamia
The Death of Reality is Coming

Stained_class


Regione: Puglia
Prov.: Bari
Città: Bari


Inserito il - 29/01/2009 : 17:05:34  Mostra Profilo  Visita l'Homepage di Lamia  Clicca per vedere l'indirizzo MSN di Lamia Invia a Lamia un Messaggio Privato  Rispondi Quotando
micamalex, tu scrivi questo:
3) Si scelgono le AGGREGAZIONI(che sarebbero i GROUP BY dell'SQL), ossia si sceglie uno o due attributi per i quali aggregare i risultati, in particolare:

mentre chilavert aveva scritto:
Si possono selezionare, per esempio con dei radio button, 0, 1 o 2 "join" fra la tabella che hai scelto e le altre tabelle del database.

senza accennare ai group by.
devo unire le due cose dette, deducendo che il group by viene applicato ad attributi (max 2) scelti tra quelli appartenenti a tabelle joinabili con quella iniziale(cioè la tabella su cui si applica la funzione)?in questo modo i join sono impliciti. ho capito bene?

http://www.antonioceci.com
"The further we go And older we grow The more we know The less we show" (primary)
...Politica? spero di abbandonare l'arca prima che affondi...
Torna all'inizio della Pagina

Lamia
The Death of Reality is Coming

Stained_class


Regione: Puglia
Prov.: Bari
Città: Bari


Inserito il - 29/01/2009 : 21:22:48  Mostra Profilo  Visita l'Homepage di Lamia  Clicca per vedere l'indirizzo MSN di Lamia Invia a Lamia un Messaggio Privato  Rispondi Quotando
ok allora ho fatto così:
dopo aver scelto la tabella tX e l'attributo aX su cui applicare la funzione
1)si sceglie se raggruppare tX con un'altra tabella tX1 specificando l'attributo di aggregazione aX1

2)e se raggruppare tX1 con un'altra tabella tX2 specificando l'attributo di aggregazione aX2

nel caso in cui (1) si verifica:
si aggiunge un inner join con tX1 e un GROUP BY aX1

nel caso in cui (2) si verifica:
si aggiunge un inner join con tX2 e si aggiunge aX2 al GROUP BY, cioè: group by aX1, aX2

3)si aggiungono le condizioni op(m,n)
nelle condizioni si possono specificare come m tutti gli attributi di tX e, "se" sono stati specificati, anche quelli di tX1 e di tX2;
mentre come n si possono specificare tutti i valori assunti da m e gli attributi di tX dello stesso tipo di m (integer, boolean, etc.), e anche, "se" sono stati specificati, quelli di tX1 e di tX2 dello stesso tipo di m.

spero qualcuno mi corregga se sto sbagliando...grazie ancora a tutti ;)

http://www.antonioceci.com
"The further we go And older we grow The more we know The less we show" (primary)
...Politica? spero di abbandonare l'arca prima che affondi...
Torna all'inizio della Pagina

Micamalex
Utente giovane


Regione: Puglia
Prov.: Bari
Città: Terlizzi


Inserito il - 30/01/2009 : 10:22:25  Mostra Profilo  Visita l'Homepage di Micamalex Invia a Micamalex un Messaggio Privato  Rispondi Quotando
Si può essere una soluzione, il problema è che così limiti la scelta degli attributi solo alle tabelle (max 3 se non sbaglio) tra cui fai il join.

Invece il prof ci ha detto esplicitamente che non vuole questa limitazione, ma che l'utente deve sempre poter scegliere qualsiasi attributo di qualsiasi tabella sia per le aggregazioni che per le condizioni.

In altre parole la difficoltà di ciò che desidera il prof è creare dei join dinamici.

La soluzione che ho scelto è questa:
dati tutti gli attributi scelti dall'utente appartenenti anche a tabelle distinte
trovo un percorso dalla prima all'ultima tabella utilizzando le chiavi esterne. Una volta trovato il percorso costruisco i vari join per unire tutte le tabelle.

Non sto dicendo che è questa la soluzione è che è la migliore, dico solo che ho fatto così, ti farò sapere presto se va bene.

Lo scopo del lavoro è quello di guadagnarsi il tempo libero
Torna all'inizio della Pagina
Pagina: di 2 Discussione Precedente Discussione Discussione Successiva  
Pagina Successiva
 Nuova Discussione  Nuovo Sondaggio Nuovo Sondaggio
 Rispondi
 Versione Stampabile Bookmark this Topic Aggiungi Segnalibro
Vai a:
Forum by laureateci.it © 2002 - 2012 Laureateci Communications Torna all'inizio della Pagina
Il DB ha risposto in 1,01 secondi.

TargatoNA.it | SuperDeejay.Net | Antidoto.org | Brutto.it | Equiweb.it | Snitz Forum 2000