Search code examples
sqlms-access

How to SUM two fields within an SQL query


I need to get the total of two fields which are within the same row and input that number in a field at the end of that same row.

This is my code.

Sum(tbl1.fld1 + tbl1.fld2) AS [Total]

Is this what the SUM function is used for, or can you only use the SUM function for getting the total of a column?

Thanks


Solution

  • SUM is an aggregate function. It will calculate the total for each group. + is used for calculating two or more columns in a row.

    Consider this example,

    ID  VALUE1  VALUE2
    ===================
    1   1       2
    1   2       2
    2   3       4
    2   4       5
    

     

    SELECT  ID, SUM(VALUE1), SUM(VALUE2)
    FROM    tableName
    GROUP   BY ID
    

    will result

    ID, SUM(VALUE1), SUM(VALUE2)
    1   3           4
    2   7           9
    

     

    SELECT  ID, VALUE1 + VALUE2
    FROM    TableName
    

    will result

    ID, VALUE1 + VALUE2
    1   3
    1   4
    2   7
    2   9
    

     

    SELECT  ID, SUM(VALUE1 + VALUE2)
    FROM    tableName
    GROUP   BY ID
    

    will result

    ID, SUM(VALUE1 + VALUE2)
    1   7
    2   16