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

    Valore estrapolato diverso da quello nel DB

    Buon pomeriggio, ho questo problemino.
    Eseguo una Select SUM, sull'editor di Mysql-front e mi estrapola questa somma 22,93.
    Se eseguo la stessa Sum, con uno script il risultato diventa 22.

    Questo è quello che faccio:
    codice:
    $qTot = ("select Sum(cau_Rendita) as R_U_I from TBDATICAU");
    
    if($txtFCau!=""){
    	$sel .= (" cau_F = '". $txtFCau ."'") or die ("Non è possibile eseguire la SUM riga 111: " . mysql_error());							
    }
    else{
    //etc etc
    }
    $row = mysql_query($qTot . " where " . $sel);
    
    while ($Riga = @mysql_fetch_array($row)){
    	$nR_U_I = $Riga['R_U_I'];
                 //altri valori
    }
    
    echo "<div class=\"fRend\">".$nR_U_I."</div>";
    Sapete dirmi come mai?
    Grazie mille...

  2. #2
    nessuno sà come mai ho questo problema?
    Il campo dove risiedono questi valori è di tipo varchar, può essere utile questa informazione?

    Cioè non capisco...

  3. #3
    ho notato quest'altra cosa.
    Se eseguo una semplice select senza SUM, mi estrapola il valore 22,93 inserito nel campo
    Se invece eseguo la SUM lo arrotonda a 22.
    Come mai?

    Un'altra cosa, la select SUM che eseguo estrapola un solo record, forse non riesce a fare la SUM e arrotonda?Sicuro che è una cavola quest'ultima cosa ma..che ne sò

    Ditemi sono tutto orecchi.
    Grazie ragazzi....

  4. #4
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    secondo me è un problema di separatore dei decimali.. mysql vuole il . come separatore decimale e non la , quindi il sum prende il valore intero e non considera il decimale...

    cambia il valore del campo in 22.93 e vedi che SUM ti dà
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  5. #5
    grazie mille....
    però il campo non è decimal ma è varchar.
    Domanda: posso convertire il varchar con il decimal, anche se ormai i campi sono valorizzati?
    Se si, si può verificare una perdita di valori?

    grazie ancora

  6. #6
    ho provato con una vecchia tabella ed ho perso il valore con la virgola...
    blahhhhhhh!!!! :master:

  7. #7
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    fai tutto da query...

    codice:
    UPDATE tabella SET campo=REPLACE(campo,',','.');
    fai questa query e poi converti il campo in DECIMAL

    in DECIMAL devi esprimre 2 valori

    DECIMAL 10,5 per esempio vuol dire un campo con numeri decimali con lunghezza massima di 10 cifre, di cui 5 sono i decimali
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  8. #8
    perfetto...sei un grande...infatti adesso il valore che mi restituisce è proprio quello che volevo 22,93!!

    Per fortuna che c'è gente come te, ca..o

    Grazie mille alla prox

  9. #9
    Adesso che ci sono ti faccio un'altra domandina...spero di non romperti troppo!!

    Ho un campo vuoto che vorrei popolare prendendo i valori di altri 6 campi, senza sommarli, ma presi cosi come sono per es:
    campo1 = valore 1
    campo2 = valore 4
    campo3 = valore 3
    campo4 = valore 2
    campo5 = valore 8
    campo6 = valore 1

    campo7 = valore 143281

    Quindi, tramite una query come faccio?
    i campi sopra citati non hanno sempre quel valore, ma varia di record in record.
    Sai per caso come poter strutturare una query del genere?

    Grazie ancora....

  10. #10
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    codice:
    UPDATE tabella SET tuo_campo=CONCAT(campo1,campo2,campo3, ecc...)
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

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 © 2024 vBulletin Solutions, Inc. All rights reserved.