| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | iu_23(at)hotmail(dot)com (Dawn) |
| Cc: | pgsql-sql(at)postgresql(dot)org |
| Subject: | Re: multiple sql update w/ major time issues |
| Date: | 2001-06-12 18:34:00 |
| Message-ID: | 12898.992370840@sss.pgh.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-sql |
iu_23(at)hotmail(dot)com (Dawn) writes:
> I have a sql update statement that is dealing with hundreds of
> thousands of records. It takes hours and hours to complete (if it
> does complete and not take down the server).
No wonder, if you write it like that. You're forcing a fresh select
from gl_totals for each row of aud_member_ext_attributes; then you're
doing it again for each UPDATE command.
If you were using Postgres (which I surmise you are not, because it
doesn't accept aliases in UPDATE) you could do
update aud_member_ext_attributes
set
EXTVALUE217 = gl_totals.MTD,
EXTVALUE223 = gl_totals.YTD,
EXTVALUE229 = gl_totals.R12
where gl_totals.category = 'tankrent'
and gl_totals.CUST_NO = EXTVALUE101
and gl_totals.DIST_NO = EXTVALUE102
and gl_totals.SUB_NO = EXTVALUE105
and gl_totals.FUEL_TYPE = EXTVALUE123;
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Chris Ruprecht | 2001-06-12 18:39:40 | Re: rpt |
| Previous Message | Alex Pilosov | 2001-06-12 18:06:19 | Re: audit trail and system catalogs |