ok, grazie al tuo suggerimento sono riuscito ad ottenere i risultati corretti di due delle tre colonne che mi interessano. In una colonna, quella dei km (colonna di tipo float) o un bell'errore di calcolo/somma.
Inanzitutto posto un pò di codice:
Con questa query ottengo il primo risultato corretto che consiste nella tabella che mostra la data, luogo, km, gasolio e l'adblue:
http://www.os4games.it/immagini/img_2.png$sql = mysql_query("SELECT movimenti.km, movimenti.gasolio, movimenti.adblue, movimenti.id_luogo, movimenti.id_g, luoghi.luogo, giorni.giorno FROM movimenti LEFT JOIN giorni ON giorni.id=movimenti.id_g LEFT JOIN luoghi ON luoghi.id=movimenti.id_luogo WHERE giorni.giorno BETWEEN '$data1' AND '$data2' AND movimenti.id_autista = ('$user_id') AND movimenti.gasolio != '' AND movimenti.adblue != ''") or die(mysql_error());
ora, le query che utilizzo per l'adblu ed il gasolio (ne posto una sola perché tanto sono uguali, cambia solo il campo per la somma). Questa query é corretta per questi due campi ma per i km mi restituisce un errore inesatto:
il problema consiste nel fatto che i km sono di tipo float e sum non va bene per i dati tipo float?$sql_2 = mysql_query("SELECT movimenti.km, movimenti.adblue, movimenti.gasolio, movimenti.id_autista, movimenti.id_g, SUM(movimenti.gasolio) AS gasolio_totali FROM movimenti LEFT JOIN giorni ON giorni.giorno BETWEEN '$data1' AND '2011-10-01' AND giorni.id=movimenti.id_g AND movimenti.id_autista = ($user_id) AND movimenti.gasolio != '' AND movimenti.adblue != ''") or die(mysql_error());