|
Ron, You don't need to bother with updating via a join.... update table1 set fldX = (select T2.fldY from table2 T2 where T1.keyfld = T2.keyfld) Now, there's still a problem with this.... What happens when T1 does not have a matching row in T2? (Answer: you'll update fldx to *null, which probably isn't what you want... So, there's two ways to handle; define a default value that you want to see in place of *null, or only update rows that exist in both tables. Since your original notion was to use inner join, I'll proceed with the latter solution. update table1 set fldX = (select T2.fldY from table2 T2 where T1.keyfld = T2.keyfld) where exists (select * from table2 T3 where T1.keyfld = T3.keyfld) The other alternative looks like this... Remember that this one will change every row in T1, so be careful that you understand what's happening... update table1 set fldX = (select coalesce(T2.fldY,' ') from table2 T2 where T1.keyfld = T2.keyfld) hth, Eric DeLong Sally Beauty Company MIS-Project Manager (BSG) 940-297-2863 or ext. 1863 -----Original Message----- From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-bounces@xxxxxxxxxxxx]On Behalf Of Ron Adams Sent: Monday, January 16, 2006 3:30 PM To: MIDRANGE-L@xxxxxxxxxxxx Subject: Re: SQL UPDATE using INNER JOIN? To be more specific, I'm trying to do the equivalent of this on the iSeries: update table1 set fldX = T2.fldY from table1 T1 inner join table2 T2 on T1.keyfld = T2.keyfld On 1/16/06, Ron Adams <rondadams@xxxxxxxxx> wrote: > > I'm trying to don an UPDATE to a table using data from another table and > using the INNER JOIN clause. Can anyone show me a working example of this > because I can't seem to get it right. > >
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.