Devi sommare i campi e dividerli per il numero di campi. Se il tuo Average il campo è di DECIMAL digita non hai nemmeno bisogno di specificare il ROUND funzione. Qualsiasi decimale eccedente la dichiarazione verrà semplicemente troncato (SQL Fiddle
) :
UPDATE table_name
SET AVERAGE = (grade1 + grade2) / 2;
Nel tuo esempio hai solo due campi di cui stai ottenendo la media. Quindi Average decimal(3,1) funzionerebbe per te poiché il massimo della parte decimale sarà .5 . Quindi il ROUND la funzione chiaramente non è necessaria.