Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 28
  1. #1

    Media assenza variabile

    Salve, mi serve uno script un pò particolare, ma non mi viene l'idea: ho uno tot record mysql, solo in alcuni (a volte anche consecutivi) è presente la variabile x, ora devo contare gli intervalli e farne una media.
    Spero di essere stato chiaro

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Non sei stato chiaro per niente.
    Intervalli calcolati in base a cosa?
    Spiega per bene la situazione e fa anche un esempio, così si capisce cosa devi fare.

  3. #3
    Esempio:

    query1 la variabile x è presente
    query2 la variabile x è assente
    query3 la variabile x è assente
    query4 la variabile x è assente
    query5 la variabile x è assente
    query6 la variabile x è presente
    query7 la variabile x è assente
    query8 la variabile x è assente
    query9 la variabile x è presente

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Le query come sono fatte? Fai una query che recupera lo stato di ogni variabile del tipo

    SELECT stato FROM tabella WHERE variabile='...'

    Si può sapere come è fatta la tabella?
    L'elaborazione cosa dovrebbe fare? Il risultato sull'esempio che hai fornito quale dovrebbe essere?

    Spiega bene perché non stiamo nella tua testa, tu lo sai cosa vuoi ottenere e quale sia la situazione, noi no e tra l'altro pare che sia un segreto di stato perché usi termini vaghi.
    Tranquillo che è gratis scrivere sul forum.

  5. #5
    Quote Originariamente inviata da poeta1978 Visualizza il messaggio
    Esempio:

    query1 la variabile x è presente
    query2 la variabile x è assente
    query3 la variabile x è assente
    query4 la variabile x è assente
    query5 la variabile x è assente
    query6 la variabile x è presente
    query7 la variabile x è assente
    query8 la variabile x è assente
    query9 la variabile x è presente
    E tutto questo cosa dovrebbe spiegare?
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  6. #6
    Utente di HTML.it L'avatar di joker06
    Registrato dal
    Dec 2006
    Messaggi
    782
    provo ad entrare nella sua testa:
    codice:
    Tabella:
    
    id       | campo 1 | campo 2 | x
    
    1        | b           | c          | presente
    2        | e           | f           | assente
    3        | h           | i           | presente
    4        | b           | c          | presente
    5        | b           | c          | presente
    6        | b           | c          | assente
    7        | b           | c          | presente
    8        | b           | c          | presente
    credo che lui voglia sapere la distanza tra un presente e l'altro giusto?
    Ultima modifica di joker06; 25-07-2014 a 11:38

  7. #7
    id | campo 1 | campo 2
    1 | x | y
    2 | e | f
    3 | h | i
    4 | b | c
    5 | x | c
    6 | b | c
    7 | b | c
    8 | b | x

    Dunque, il primo intervallo tra la x 4 record, il secondo 3, quindi la media sarebbe (4+3)/2, io devo ricavare questa media
    Ultima modifica di poeta1978; 25-07-2014 a 11:55

  8. #8
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    id è sequenziale o ha dei salti?

  9. #9
    può saltare (in caso di cancellazione)

  10. #10
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Una traccia potrebbe essere questa
    Codice PHP:
    //se puoi far affidamento al campo id per la numerazione (ovvero se non ci sono id mancanti)
    //esegui una query che recuperi tutti i record in cui compare x

    //numero di occorrenze del valore x
    $occorrenze mysqli_num_rows($result);

    //poi cicli sul risultato e fai una cosa di questo tipo
    $righe = array();
    while( 
    $orw mysqli_fetch_assoc($result) )
    {
        
    $righe[] = $row['id'];
    }

    $distanza_tot 0;
    for (
    $i=0$i<$occorrenze-1$i++)
    {
        
    $distanza_tot += $righe[$i+1] - $righe[$i];
    }

    $media $distanza_tot $occorrenze
    Edit: come non detto.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.