w3resource logo
SQL Tutorial

SQL update columns with sum() and group by

Description

In this page, we are going to discuss, how to change the data of the columns with the SQL UPDATE statement using aggregate function SUM() and GROUP BY clause.

Example:

Sample table: customer1


Sample table: orders


To change the value of 'outstanding_amt' of 'customer1' table with following conditions -

1. modified value for 'outstanding_amt' is 0,

2. sum of 'ord_amount' from 'orders' table must be greater than 5000 which satisfies the condition bellow :

3. unique 'cust_code' of 'customer1' makes a group,

4. and 'cust_code' of 'customer1' and 'orders' must be same,

the following SQL statement can be used :

SQL Code:

UPDATE  customer1
SET outstanding_amt=0
WHERE (SELECT SUM(ord_amount) FROM orders
WHERE customer1.cust_code=orders.cust_code
GROUP BY cust_code )>5000;

SQL update columns with NULL

In the following we are going to discuss, how the NULL works with the UPDATE statement.

Example:

Sample table: agent1


To update the 'agent1' table with following conditions -

1. modified value for 'phone_no' is NULL,

2. 'commission' must be more than .15,

the following SQL statement can be used :

SQL Code:

UPDATE  agent1
SET phone_no=NULL
WHERE commission>=.15;

See our Model Database

Here is a new document which is a collection of questions with short and simple answers, useful for learning SQL as well as for interviews.