|
|
|
As the article title suggests, an UPDATE statement is able to reference data in other tables. This is done using a FROM clause. Let's use the Northwind database as our example here. A usual update statment to update a product's list price might look something like this. |
(That is some really expensive Tofu)
This works fine but it is not too likely you will do all price changes via Query Analyzer. A more realistic example when running your hugely successful online store might be where you get a weekly CSV file with updated prices for your products.
You can DTS this file into a holding table (I provided a script to create holding table and simulate price data) and then run this: |
What this does is updates the products table with data from the holding table where the product id's match.
Now let's say that your supplier's product id doesn't match your id (isn't that always the way), but the product name and supplier name does. Here you are going to have to join your supplier table to your products table to compare them. |
Click here to copy the following block | Update Products SET Products.UnitPrice = Holding.UnitPrice FROM Products INNER JOIN Suppliers ON Suppliers.SupplierID = Products.SupplierID INNER JOIN Holding ON Holding.Supplier = Suppliers.CompanyName AND Holding.Product = Products.ProductName |
This joins the Suppliers, Products and Holding Tables together and then updates the product price with the holding price.
Good luck and happy coding.
|
|
|
|
Submitted By :
Nayan Patel
(Member Since : 5/26/2004 12:23:06 PM)
|
|
|
Job Description :
He is the moderator of this site and currently working as an independent consultant. He works with VB.net/ASP.net, SQL Server and other MS technologies. He is MCSD.net, MCDBA and MCSE. In his free time he likes to watch funny movies and doing oil painting. |
View all (893) submissions by this author
(Birth Date : 7/14/1981 ) |
|
|