﻿<?xml version='1.0' encoding='UTF-8'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Teradata Forums / Teradata  / Teradata Database  / UPDATE vs LEFT OUTER JOIN / Latest Posts</title><generator>InstantForum.NET v4.1.4</generator><description>Teradata Forums</description><link>http://www.teradata.com/teradataforum/</link><webMaster>info@teradata.com</webMaster><lastBuildDate>Wed, 03 Dec 2008 16:17:08 GMT</lastBuildDate><ttl>20</ttl><item><title>RE: UPDATE vs LEFT OUTER JOIN</title><link>http://www.teradata.com/teradataforum/Topic5851-9-1.aspx</link><description>The left-outrr join approach should be faster since you will avoid the transient logging that occurs for the update in step 1 of the original approach.&lt;br&gt;&lt;br&gt;&lt;br&gt;Make the PI of both table A and C the same as the joined columns (col1/cola, col2/colb) to keep the join amp local.  &lt;br&gt;&lt;br&gt;Also, it db2.tableA has the same PI, the insert into that table will laso be amp local.&lt;br&gt;</description><pubDate>Thu, 30 Nov 2006 16:12:51 GMT</pubDate><dc:creator>jklee</dc:creator></item><item><title>UPDATE vs LEFT OUTER JOIN</title><link>http://www.teradata.com/teradataforum/Topic5851-9-1.aspx</link><description>Hi All,&lt;br&gt;&lt;br&gt;  Wants your ideas on update vs Left Outer Join wrt Performance&lt;br&gt;&lt;br&gt;  I have 2 tables Table A  and Table C in two databases.&lt;br&gt;&lt;br&gt;  Database 1:- Table_A (daily Full refresh)&lt;br&gt;  &lt;br&gt;  Database 2: Table_A (Incremental Loading) and Table_C&lt;br&gt;&lt;br&gt;So total 3 tables &lt;br&gt;&lt;br&gt;     table_A having col 1 , col 2 and col 3 &lt;br&gt;     table_C having col a , col b and col c&lt;br&gt;&lt;br&gt;Currentlty I am doing&lt;br&gt;  &lt;br&gt;Step 1)&lt;br&gt;&lt;br&gt;Update database1.table_A A, database2. table_C C&lt;br&gt;set A.col3 = C.col c&lt;br&gt;where A.col1 = C.col a and A.col2 = C.col b&lt;br&gt;&lt;br&gt;after this &lt;br&gt;&lt;br&gt;Step 2) &lt;br&gt;&lt;br&gt;insert into database2.table_A &lt;br&gt;as select * from database1.table_A &lt;br&gt;&lt;br&gt;But updates are taking really very longtime.. I am getting almost 10 Million records every day for database1.table_A and also very huge number records in database2.table_C as well (approx 40 million) . So step 1 taking much time.&lt;br&gt;&lt;br&gt;So I am thinking of using following SQL to combine step 1 and stpe 2 and removing update&lt;br&gt;&lt;br&gt;insert into database2.table_A&lt;br&gt;(&lt;br&gt;col 1,&lt;br&gt;col 2,&lt;br&gt;col 3&lt;br&gt;)&lt;br&gt;select&lt;br&gt;(A.col 1,&lt;br&gt; A.col 2,&lt;br&gt; C.col c&lt;br&gt;)&lt;br&gt;from database1.table_A A&lt;br&gt;LEFT OUTER JOIN database2.table_C C&lt;br&gt;ON A.col1 = C.col a and A.col2 = C.col b;&lt;br&gt;&lt;br&gt;Is this OK? or any other ideas to improve performance?</description><pubDate>Tue, 14 Nov 2006 15:51:34 GMT</pubDate><dc:creator>Ajay Jr</dc:creator></item></channel></rss>