il mio archivio memorizza i risultati di un tiro a segno, ogni concorrente
(id_conc) puo' sparare 2 volte ed io devo considerare solo la sessione
migliore ( il campo rientro mi serve per sapere se il punteggio migliore e'
stato realizzato con la prima o la seconda sessione di tiro), ovviamente la
tabella e' ordinata in base al punteggio.
Il risultato finale deve essere una tabella con il miglior punteggio di ogni
concorrente
grazie, spero di essere stato + chiaro
di seguito il mio post precedente
>ciao
>ho un problema:
>della seguente lista :
>
>id id_conc rientro punteggio
>1 1 n 10
>2 3 n 14
>3 5 n 11
>4 1 s 15
>5 3 s 5
>6 2 n 12
>id e' un contatore
>id_conc e' un riferimento ad una tabella dove ho i dati di un
>concorrente
>rientro e' un campo di tipo Sì/No
>punteggio e' un campo numerico sul quale eseguire un ordinamento
>devo ricavare una lista che abbia solo questi record
>4 1 s 15
>2 3 n 14
>6 2 n 12
>3 5 n 11
>sono disperato, COME POSSO FARE ?
>ciao e grazie a chi mi aiutera'
Già...
->Il risultato finale deve essere una tabella con il miglior punteggio di
ogni
->concorrente
->>id id_conc rientro punteggio
->
->>1 1 n 10
->>2 3 n 14
->>3 5 n 11
->>4 1 s 15
->>5 3 s 5
->>6 2 n 12
Un'idea che mi è venuta è questa
1 Fai una Qry dove metti ID_Conc e Punteggio
Raggruppa per ID e metti MAX nel campo Punteggio
Esempio:
SELECT ID_Conc, Max(Punteggio) AS MaxDiPunteggio
FROM Tabella
GROUP BY ID_Conc;
2 Fai Un'altra Qry Basata sulla Tabella e sulla Qry 1
Dove metti in relazione i campi ID_Conc e i campi MaxDiPunteggio con
Punteggio
e richiedi tutti i campi
Esempio
SELECT Tabella.ID, Tabella.ID_Conc, Tabella.Rientro, Tabella.Punteggio
FROM Qry1 INNER JOIN Tabella ON (Qry1.ID_Conc = Tabella.ID_Conc) AND
(Qry1.MaxDiPunteggio = Tabella.Punteggio);
Il Risultato dovrebbe essere quello Desiderato:
->>devo ricavare una lista che abbia solo questi record
->
->>4 1 s 15
->>2 3 n 14
->>6 2 n 12
->>3 5 n 11
Ciao
--
**************************************************************************
Ognuno è solo, Scrauso sulla faccia del Mondo
colpito da un Array di Sole
ed é subito Select
**************************************************************************
> Un'idea che mi è venuta è questa
>
> 1 Fai una Qry dove metti ID_Conc e Punteggio
>
> Raggruppa per ID e metti MAX nel campo Punteggio
>
> Esempio:
>
> SELECT ID_Conc, Max(Punteggio) AS MaxDiPunteggio
> FROM Tabella
> GROUP BY ID_Conc;
No, provala e vedrai che non funziona...
Non è che quando raggruppi ti seleziona il record con il massimo valore...
Secondo me si può fare solo via codice...
Antonio
Prepara la tabella con il primo record id 1 e valore 5 e secondo record id
1 e valore 10. Ti da 1 e 5...
Antonio
>Antonio
Se raggruppi per ID ti da 1 ed il MAX di Valore 10 .
Il vero problema e se piů record corrispondono alla relazione Raggruppamento
ID con ID e MAXValore con Valore.
Inoltre si pone il problema di Due Valori identici con Rientro Diverso.
Ciao.
--
**************************************************************************
Ognuno č solo, Scrauso sulla faccia del Mondo
...............................
>Se raggruppi per ID ti da 1 ed il MAX di Valore 10 .
>
>Il vero problema e se più record corrispondono alla relazione
Raggruppamento
>ID con ID e MAXValore con Valore.
>Inoltre si pone il problema di Due Valori identici con Rientro Diverso.
>Ciao.
>--
Infatti e' quello che avevo postato tempo addietro per sapere
quel campo se andava in raggruppo oppure No , ma non
ho mai avuto risposta a riguardo. Per il resto, raggruppando per
ID e solo per Id e chiedendo il Max(Valore) riporta UN SOLO RECORD.
A meno che ho il Jet speciale.
Bye :o)
Regà, me state a fa smadonnà tutti i santi del paradiso!!!
L'ho provato per la decimesima volta!!!
Non mi da il massimo, mi da il primo!!!
id id_conc punteggio
1 1 5
2 3 8
3 5 12
4 2 13
5 3 15
6 1 14
SELECT DISTINCTROW Tabella7.id_conc, Max(Tabella7.punteggio) AS
Maxdipunteggio
FROM Tabella7
GROUP BY Tabella7.id_conc;
id_conc Maxdipunteggio
1 5
2 13
3 8
5 12
Antonio
Mo me stai a fa smadonna tu !!!!!
Campo1 Campo2 Campo3
1 1 5
2 3 8
3 5 12
4 2 13
5 3 15
6 1 14
SELECT Tabella1.Campo2, Max(Tabella1.Campo3) AS MaxDiCampo3
FROM Tabella1
GROUP BY Tabella1.Campo2;
Campo2 MaxDiCampo3
1 14
2 13
3 15
5 12
(il tutto preso col copia e incolla)
Me la spieghi ??????
e nun te 'ncazza' !!!
bye :o)
->Non mi da il massimo, mi da il primo!!!
Boh! secondo me è scrauso il tuo Access...
Ho provato anche con Access 2.0 e mi risulta OK... Segue dettaglio
tuo
->id id_conc punteggio
->1 1 5
->2 3 8
->3 5 12
->4 2 13
->5 3 15
->6 1 14
Confermo Tabella:
id id_conc Punteggio
1 1 5
2 3 8
3 5 12
4 2 13
5 3 15
6 1 14
tuo
->SELECT DISTINCTROW Tabella7.id_conc, Max(Tabella7.punteggio) AS
->Maxdipunteggio
->FROM Tabella7
->GROUP BY Tabella7.id_conc;
Confermo il dettato SQL:
SELECT DISTINCTROW Tiro.id_conc, Max(Tiro.Punteggio) AS MaxdiPunteggio
FROM Tiro
GROUP BY Tiro.id_conc;
tuo
->id_conc Maxdipunteggio
->1 5
->2 13
->3 8
->5 12
Non confermo il risultato :
id_conc MaxdiPunteggio
1 14
2 13
3 15
5 12
Fammi sapere..
Ciao.
Io mi riferivo all'altro lato della relazione:
Un giocatore può ottenere due risultati identici sia al primo che al secondo
tiro....
Forse si può risolvere l'inconveniente Raggruppando per [ID_Conc] & [MAXdi
Punteggio] e richiedendo il First degli altri valori... naturalmente dopo
aver ordinato per [Rientro] in maniera da ottenere a parità di condizioni la
prima prestazione...
Spero di essere stato abbastanza chiaro..
Ciao.
Anch'io ho fatto copia incolla
> Me la spieghi ??????
Evidentemente è random!!!
> e nun te 'ncazza' !!!
E chi se incazza!!!
> bye :o)
Bettini, tu che fai finta di essere il saggio dell'SQL, ci dai un tuo
parere?
antonio
>Bettini, tu che fai finta di essere il saggio dell'SQL, ci dai un tuo
>parere?
>
>antonio
>
Smazzatevela, uno di voi 2 sta barando ed evidentemente non
ha provato quanto dice.... (o avete 2 Access diversi)
Ste
Potessero cascarmi le palle in questo momento...
Inviuzzo del database?
Antonio
ERRATA CORRIGE
Potessero cascarmi le palle in questo momento...
se con la struttura della tabella in questa maniera e cioč con tipo
punteggio = Testo, non funziona come dico io!!!!
Forse me le salvo, forse me le salvo!!!!
Antonio
Domanda di Matematica:
Data una serie di valori:
A ;Biso; GROAN; ###§%% ; SGRUNT
Indicare il valore più alto
Ciao.
--
**************************************************************************
Ognuno è solo, Scrauso sulla faccia del Mondo
>> Smazzatevela, uno di voi 2 sta barando ed evidentemente non
>> ha provato quanto dice.... (o avete 2 Access diversi)
>
>Potessero cascarmi le palle in questo momento...
>
>Inviuzzo del database?
Il database non saprei, ma in questo momento sono
rotolate due palle nella stanza dalla finestra....
Ti senti forse più leggero ?!?
Ste
> Domanda di Matematica:
>
> Data una serie di valori:
>
> A ;Biso; GROAN; ###§%% ; SGRUNT
> Indicare il valore più alto
ROTFL!!!
Antonio
> >Forse me le salvo, forse me le salvo!!!!
> >
> Te le taglierei io le palle !!!!!!!!
> Certo che se lo fai testo, il peso in tabella ASCII cambia !!!!!
> Pippone !!!!
E' stronzo access che quando crei una tabella di corsa ti ci mette testo
invece di capire che dovrebbe mettere numerico!!!
Eh eh eh
Antonio
E nooo, daiii, me l'ero salvate in extremis...
Antonio