Scartare un valore da un set di n valori

di il
11 risposte

Scartare un valore da un set di n valori

Salve a tutti, non penso che vi ricordiate di me, perchè l'ultima volta che ho postato qui è stato 2 anni fa, per chiedere pumi sul progetto di un db che raccolga le statistiche della Formula1.

Il progetto è quasi ultimato, mi serve solo risolvere il seguente problema

Durante la disputa di alcuni mondiali passati, c'era una regola che ti imponeva di SCARTE un numero preciso di risultati da quelli conseguiti durante l'anno, per esempio

nel 1950 le gare furono 7 e risultati utili 4

ma nel 54 le cose cambiarono

9 gare e 5 risultati utili da considerare

PREMESSO CHE

Ho una tab dove ho salvato tutti queste variazioni, ora mi ritrovo con una tab (GARE) dove ci sono tutti i risultati utili dal 1950 al 1960

Devo però creare una classifica annuale, applicando queste regole

Stavo pensando di creare un Array per ogni pilota con i suoi risultati, filtrare gli utili (tanto so quanti ne devo salvare) e poi scrivere la somma in una nuova tabella

L'idea c'è l'ho, ma non so come svilupparla, se mi date un aiuto vi ringrazio molto

Saluti

11 Risposte

  • Re: Scartare un valore da un set di n valori

    Crea una funzione che richiami in una query, immagino raggruppata per anno, come campo calcolato, alla funzione passi l'anno ed eventualmente altri parametri necessari al calcolo, che ne so la scuderia o altro.

    Nea funzione in base ai dati estratti dalla tabella delle regole… effettui il calcolo.

  • Re: Scartare un valore da un set di n valori

    05/04/2023 - @Alex ha scritto:


    Crea una funzione che richiami in una query, immagino raggruppata per anno, come campo calcolato, alla funzione passi l'anno ed eventualmente altri parametri necessari al calcolo, che ne so la scuderia o altro.

    Nea funzione in base ai dati estratti dalla tabella delle regole… effettui il calcolo.

    detta così…vabbè ho capito dai

  • Re: Scartare un valore da un set di n valori

    Cosa ti aspetti puoi chiarirci esplicitamente…?

    Ti ho dato una linea dii come muoverti, credo possa essere sufficiente per iniziare l'approfondimento tecnico, argomenta cosa non va nel suggerimento e cosa ti serve o cosa non sai fare ma nello specifico…

    Con la risposta che hai appena dato direi che non abbiamo modo di darti nessuna indicazione più specifica, anzi…

    Vedi tu.

  • Re: Scartare un valore da un set di n valori

    05/04/2023 - @Alex ha scritto:


    Cosa ti aspetti puoi chiarirci esplicitamente…?

    Ti ho dato una linea dii come muoverti, credo possa essere sufficiente per iniziare l'approfondimento tecnico, argomenta cosa non va nel suggerimento e cosa ti serve o cosa non sai fare ma nello specifico…

    Con la risposta che hai appena dato direi che non abbiamo modo di darti nessuna indicazione più specifica, anzi…

    Vedi tu.

    la line di come muovermi la ho ben chiara:

    1 Apro la tabella con i risultati

    2 Cerco i record che mi servono per stilare la classifica

    2.1 escludo tutto i valori pari a 0

    3 Devo conservare solo n valori (come ho spiegato prima) e più vanno avanti le stagioni più la cosa si complica, per esempio, quando saranno 13 GP devo dividerli in due trances una da 7 e una da 6 e scartare il peggiore risultato

    DA 1 a 2 ci arrivo da solo, ma il punto 3 è un po agnostico

    tutto <> dal dire “fai una query fai i calcoli che ti servono” e bla bla bla …

  • Re: Scartare un valore da un set di n valori

    Esempio

    prendiamo in esame il 1951 che ha i seguenti punteggi:

    8 al primo 6 al secondo 4 al terzo 3 al quarto e 2 al quinto, di seguito riporto il punteggio finale dei primi 3 in classifica generale

    JMF totalizza i seguenti piazzamenti 1,9,1,2,2,1 per un punteggio complessivo di 37

    ma deve scartare un piazzamento, scarta un secondo posto che vale 6 così ottiene 31 punti

    Ascari totalizza i seguenti piazzamenti: 6,2,2,1,1,4 per un punteggio complessivo di 28

    ma deve scartare un piazzamento, quindi scarta il 4to posto che vale 3 punti ottiene così 25 punti utili

    JFG totalizza i seguenti piazzamenti 2,1,3,2,2 per un punteggio complessivo di 27

    ma deve scartare un piazzamento, quindi scarta il terzo posto che vale 4 ottiene così 23 punti

    Ovviamente la mia classifica prevede sia i punti totali che i punti decurtati, la classifica valida è fatta considerando i decurtati

  • Re: Scartare un valore da un set di n valori

    Non e' che una cosa complicata puo'essere risolta in modo semplice maggggicamente.

    le regole per il punteggio variano di anno in anno, QUINDI ti serve qualcosa che

    1. dato l'anno (e quindi la regola) 
    2. data la squadra
    3. date i piazzamenti di quella squadra (una lista di valori) 
    4. dati i punteggi per ogni piazzamento (una tabellina) 
    5. applica la regola del caso:
      1. ordina i piazzamenti
      2. elimina quello che c'e da eliminare
      3. converte i piazzamenti in punteggi
      4. fa la somma
      5. applica eventuali fattori corettivi
      6. …. 

    immagino che ci saranno casi anche piu complucati

  • Re: Scartare un valore da un set di n valori

    JMF totalizza i seguenti piazzamenti 1,9,1,2,2,1 per un punteggio complessivo di 37

    ma deve scartare un piazzamento, scarta un secondo posto che vale 6 così ottiene 31 punti (forse deve scartare il 9 posto)

    Ascari totalizza i seguenti piazzamenti: 6,2,2,1,1,4 per un punteggio complessivo di 28

    ma deve scartare un piazzamento, quindi scarta il 4to posto che vale 3 punti ottiene così 25 punti utili (forse deve scartare il 6 posto)

    inoltre se posti un file di esempio è possibile vedere come hai strutturato il database.

  • Re: Scartare un valore da un set di n valori

    06/04/2023 - Lorenz71 ha scritto:

    la line di come muovermi la ho ben chiara:

    1 Apro la tabella con i risultati

    2 Cerco i record che mi servono per stilare la classifica

    2.1 escludo tutto i valori pari a 0

    3 Devo conservare solo n valori (come ho spiegato prima) e più vanno avanti le stagioni più la cosa si complica, per esempio, quando saranno 13 GP devo dividerli in due trances una da 7 e una da 6 e scartare il peggiore risultato

    DA 1 a 2 ci arrivo da solo, ma il punto 3 è un po agnostico

    tutto <> dal dire “fai una query fai i calcoli che ti servono” e bla bla bla …

    Alla base a chi ti legge serve capire se hai autonomia nell'usare lo strumento di Access, ed anche su che livello di conoscenza siamo, perchè se ti vengono forniti suggerimenti di metodo ed hai le basi della programmazione allora ci si ragiona insieme sul concreto, ma se non hai basi di programmazione VBA, ed in questo caso sono indispensabili perchè in una query non puoi gestire la cosa, allora capisci bene che non stai chiedendo aiuto di metodo ma stai chiedendo di darti una soluzione finita…!

    Io e Migliorabile ti abbiamo dato la stessa risposta , ovvero di metodo, sai implementarla con il VBA o NO…? 

    Ti aspetti che ti scriviamo noi il codice…?

    Grazie

  • Re: Scartare un valore da un set di n valori

    06/04/2023 - @Alex ha scritto:


    06/04/2023 - Lorenz71 ha scritto:

    la line di come muovermi la ho ben chiara:

    1 Apro la tabella con i risultati

    2 Cerco i record che mi servono per stilare la classifica

    2.1 escludo tutto i valori pari a 0

    3 Devo conservare solo n valori (come ho spiegato prima) e più vanno avanti le stagioni più la cosa si complica, per esempio, quando saranno 13 GP devo dividerli in due trances una da 7 e una da 6 e scartare il peggiore risultato

    DA 1 a 2 ci arrivo da solo, ma il punto 3 è un po agnostico

    tutto <> dal dire “fai una query fai i calcoli che ti servono” e bla bla bla …

    Alla base a chi ti legge serve capire se hai autonomia nell'usare lo strumento di Access, ed anche su che livello di conoscenza siamo, perchè se ti vengono forniti suggerimenti di metodo ed hai le basi della programmazione allora ci si ragiona insieme sul concreto, ma se non hai basi di programmazione VBA, ed in questo caso sono indispensabili perchè in una query non puoi gestire la cosa, allora capisci bene che non stai chiedendo aiuto di metodo ma stai chiedendo di darti una soluzione finita…!

    Io e Migliorabile ti abbiamo dato la stessa risposta , ovvero di metodo, sai implementarla con il VBA o NO…? 

    Ti aspetti che ti scriviamo noi il codice…?

    Grazie

    Purtroppo io e te viviamo su 2 mondi daimetralmente opposti:

    La mia conoscenza di Access è BUONA, anche in VBA perchè ho un trascorso da informatico, ho creato diversi dbase gestionali che interfacciavano i CAD con un archivio di disegni tecnici, dove serviva estrapolare informazioni precise per recuperare disegni da un archivio di diverse migliaia di disegni, sfruttando il file DXF del disegno perchè è editabile e contiene molte informazioni che mi servivano.

    Ma tornando a noi: non ho paura di fare una query che mi filtra i dati che mi servono, il mio scoglio è quello di trovare un modo per prendere un numero variabile di risultati, tenere i più alti è solo sto cazzo di passaggio che mi manca, poi se non mi vuoi aiutare dicendomi che su SQL esiste una funzione che si chiana TOP (scoperta grazie a chatGBT ma guarda te…) perchè sei troppo ORGOGLIONE di te stesso e delle tue capacità…bhe lasciatelo dire, stai sprecando il tuo tempo a moderare sto cazzo di forum dove sembra che tu ne sia il dittatore assoluto.

    Conosco un sacco di gente in ambito informatico, sia nella mia città che altrove (non sono un giovanotto) che STANNO OSSERVANDO questa discussione, arrivare al 10mo post senza dare una benchè minima traccia di come risolvere una questione che a te sembra maGGGicamente semplice, non fa di te una persona corretta.

    io non so cosa ti porta a NON CONDIVIDERE questa cazzata (detta da te ve) ma non mi importa, faccio a meno di gente spocchiosa ed arrogante.

    Saluti e buona pasqua, spero ti vada di traverso l'agnello, perchè di sicuro non sei vegano.

  • Re: Scartare un valore da un set di n valori

    Temo che il tuo TOP sia una soluzione non adeguata, almeno da quanto hai spiegato il problema iniziale, ma se te lo hanno suggerito gli esperti che ci osservano, e lo hai valutato con la tua lunga esperienza, procedi pure ;-)

    Per il resto… buon lavoro.

  • Re: Scartare un valore da un set di n valori

    Anche a volerti scrivere il codice a pappa pronta, è impossibile, visto che non si capisce quale sono i criteri da usare, non si capisce da quale fonti prelevi i criteri, come li applichi e dove li applichi e come vorresti gestire le eccezioni.

     Inoltre non esiste una funzione specifica. Devi crearti una funzione personalizzata ed in base ai criteri da applicare si pu realizzare in mille modi Diversi.

    Comunque rimango stupito del fatto che, da esperto di access, non conosca il TOP, che    è una funzione base di sql. Da ciò deduco che non conosci nemmeno il MIN ed il MAX, l ordinamento crescente e decrescente

    Ma sono fiducioso che con l aiuto delle decine di esperti che conosci, riuscirai a risolvere il problema.

Devi accedere o registrarti per scrivere nel forum
11 risposte