|
Jeff, Depends on what percentage need updating.. If 10%, the yes it would (probably) be better to only update the ones that need it. If 90%, the it would be (probably) be better to update all of them. The probably is in there since a big consideration is what indexes are usable for the query. As far as checking first, here's an example: UPDATE IMIMSG SET IMIMSG.IMACRC = (SELECT DMITMMST.ACREC FROM DMITMMST WHERE DMITMMST.ITNBR = IMIMSG.IMITEM ) where imimsg.imitem in (select imimsg.imitem from imimsg, dmitmmst where imimsg.imitem = dmitmmst.itnbr and imimsg.imacrc <> dmitmmst.acrec ) HTH, Charles Wilt -- iSeries Systems Administrator / Developer Mitsubishi Electric Automotive America ph: 513-573-4343 fax: 513-398-1121 > -----Original Message----- > From: midrange-l-bounces@xxxxxxxxxxxx > [mailto:midrange-l-bounces@xxxxxxxxxxxx]On Behalf Of Jeff Crosby > Sent: Wednesday, June 22, 2005 9:01 AM > To: 'Midrange Systems Technical Discussion' > Subject: RE: SQL update make fields match > > > Charles (or anyone), > > > update TableOne > > set TableOne.field1 = (select TableTwo.fieldX > > from TableTwo > > where TableTwo.CommonID = TableOne.CommonID > > ) > > Question on this. My statement (working) looks like this: > > UPDATE IMIMSG > SET IMIMSG.IMACRC = (SELECT DMITMMST.ACREC > FROM DMITMMST > WHERE DMITMMST.ITNBR = IMIMSG.IMITEM > ); > > Every row in IMIMSG is updated whether it was changed or not. > Is there a > way to only update it if it needs changing? There would have > to be some > kind of conditional test for this. In RPG I would check that > kind of thing > before updating because it is much more efficient to only > update the records > that need it. Is that true in SQL or, because it is > set-at-a-time, is it > more efficient to just do them all? > > Thanks for all your help in this. > > -- > Jeff Crosby > Dilgard Frozen Foods, Inc. > P.O. Box 13369 > Ft. Wayne, IN 46868-3369 > 260-422-7531 > > The opinions expressed are my own and not necessarily the > opinion of my > company. Unless I say so. > > > > -- > This is the Midrange Systems Technical Discussion > (MIDRANGE-L) mailing list > To post a message email: MIDRANGE-L@xxxxxxxxxxxx > To subscribe, unsubscribe, or change list options, > visit: http://lists.midrange.com/mailman/listinfo/midrange-l > or email: MIDRANGE-L-request@xxxxxxxxxxxx > Before posting, please take a moment to review the archives > at http://archive.midrange.com/midrange-l. > >
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.