Assigning Update Values Using Subqueries : Update « Insert Delete Update « SQL Server / T-SQL Tutorial






7> CREATE TABLE sales(
8>    stor_id        char(4)           NOT NULL,
9>    ord_num        varchar(20)       NOT NULL,
10>    ord_date       datetime          NOT NULL,
11>    qty            smallint          NOT NULL,
12>    payterms       varchar(12)       NOT NULL,
13>    title_id       varchar(80)
14> )
15> GO
1> insert sales values('1', 'QA7442.3', '09/13/94', 75, 'ON Billing','1')
2> insert sales values('2', 'D4482',    '09/14/94', 10, 'Net 60',    '1')
3> insert sales values('3', 'N914008',  '09/14/94', 20, 'Net 30',    '2')
4> insert sales values('4', 'N914014',  '09/14/94', 25, 'Net 30',    '3')
5> insert sales values('5', '423LL922', '09/14/94', 15, 'ON Billing','3')
6> insert sales values('6', '423LL930', '09/14/94', 10, 'ON Billing','2')
7> GO

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)
1>
2>
3> CREATE TABLE titleauthor(
4>    au_id          varchar(20),
5>    title_id       varchar(20),
6>    au_ord         tinyint               NULL,
7>    royaltyper     int                   NULL
8> )
9> GO
1>
2> insert titleauthor values('1', '2', 1, 60)
3> insert titleauthor values('2', '3', 1, 100)
4> insert titleauthor values('3', '4', 1, 100)
5> insert titleauthor values('4', '5', 1, 100)
6> insert titleauthor values('5', '6', 1, 100)
7> insert titleauthor values('6', '7', 2, 40)
8> insert titleauthor values('7', '8', 1, 100)
9> insert titleauthor values('8', '9', 1, 100)
10> GO

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)
1>      UPDATE   titleauthor
2>      SET      royaltyper = (SELECT   SUM(qty)
3>                            FROM      sales
4>                            WHERE     sales.title_id = titleauthor.title_id)
5> GO

(8 rows affected)
1>
2>
3> drop table sales;
4> drop table titleauthor;
5> GO








2.5.Update
2.5.1.The syntax of the UPDATE statement
2.5.2.Syntax of UPDATE with a Join
2.5.3.An UPDATE statement that updates all the Billings for a Banker based on the Banker's name
2.5.4.An UPDATE statement that changes the terms of all Billings for Bankers in three states
2.5.5.Limiting Rows to Be Updated
2.5.6.Assigning Update Values Using Subqueries
2.5.7.An UPDATE statement that uses an arithmetic expression to assign a value to a column
2.5.8.Updating using two subqueries.
2.5.9.Updating Data Using the CASE Expression
2.5.10.An UPDATE statement that assigns the maximum due date in the table to a specific Billing
2.5.11.Violating the constraint in an update statement
2.5.12.SET other columns to their default value
2.5.13.Change the phone number of authors living in Gary, IN, back to the DEFAULT value
2.5.14.An UPDATE statement with top
2.5.15.Update table in a transaction
2.5.16.Updating Large Value Data Type Columns with WRITE