<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: Update Rows in Another Table with the Help of Analytic Functions</title>
	<atom:link href="http://hoopercharles.wordpress.com/2009/12/17/update-rows-in-another-table-with-the-help-of-analytic-functions/feed/" rel="self" type="application/rss+xml" />
	<link>http://hoopercharles.wordpress.com/2009/12/17/update-rows-in-another-table-with-the-help-of-analytic-functions/</link>
	<description>Miscellaneous Random Oracle Topics: Stop, Think, ... Understand</description>
	<lastBuildDate>Thu, 13 Jun 2013 22:46:43 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: Charles Hooper</title>
		<link>http://hoopercharles.wordpress.com/2009/12/17/update-rows-in-another-table-with-the-help-of-analytic-functions/#comment-21</link>
		<dc:creator><![CDATA[Charles Hooper]]></dc:creator>
		<pubDate>Thu, 17 Dec 2009 18:41:47 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=384#comment-21</guid>
		<description><![CDATA[Maxim,
A couple people from the OTN forums convinced me to set up this blog - primarily just to reference some of the test cases and demonstrations that have been set up over the years.  If I remember correctly, your posts on comp.databases.oracle.* are what finally pushed me to start learning about analytic functions a couple years ago.  I look forward to seeing your future contributions in the comp.databases.oracle.* groups.

(More of Maxim&#039;s solutions may be found in the &quot;SQL – Methods of Reformatting into Equivalent Forms&quot; blog series.)]]></description>
		<content:encoded><![CDATA[<p>Maxim,<br />
A couple people from the OTN forums convinced me to set up this blog &#8211; primarily just to reference some of the test cases and demonstrations that have been set up over the years.  If I remember correctly, your posts on comp.databases.oracle.* are what finally pushed me to start learning about analytic functions a couple years ago.  I look forward to seeing your future contributions in the comp.databases.oracle.* groups.</p>
<p>(More of Maxim&#8217;s solutions may be found in the &#8220;SQL – Methods of Reformatting into Equivalent Forms&#8221; blog series.)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Maxim Demenko</title>
		<link>http://hoopercharles.wordpress.com/2009/12/17/update-rows-in-another-table-with-the-help-of-analytic-functions/#comment-17</link>
		<dc:creator><![CDATA[Maxim Demenko]]></dc:creator>
		<pubDate>Thu, 17 Dec 2009 16:54:28 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=384#comment-17</guid>
		<description><![CDATA[Charles, excellent news -  you&#039;ve started to blog - somehow, i expected (hoped) it since a long time ;-)
Thank you for that detailed testcase - i think, the performance difference can be explained by the fact, that merge statement has less to read ( t1 is accessed  one time less) and less to sort ( window sort can be costly on big datasets) as compared to update statement. Regarding different results - i can&#039;t test it at the moment, but most likely, the sort order can&#039;t uniquely identify rows in your test data (that means, there should be many rows with the same emp_no , grouping and eff_date and different descr values). If that is true, then both, row_number and first/last can pick up any descr from the set of rows, in this case the sort key should be extended to identifiy rows uniquely. Btw, the approach to use merge instead of update in similar situations i seen first time somewhere on AskTom.

Best regards

Maxim]]></description>
		<content:encoded><![CDATA[<p>Charles, excellent news &#8211;  you&#8217;ve started to blog &#8211; somehow, i expected (hoped) it since a long time <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /><br />
Thank you for that detailed testcase &#8211; i think, the performance difference can be explained by the fact, that merge statement has less to read ( t1 is accessed  one time less) and less to sort ( window sort can be costly on big datasets) as compared to update statement. Regarding different results &#8211; i can&#8217;t test it at the moment, but most likely, the sort order can&#8217;t uniquely identify rows in your test data (that means, there should be many rows with the same emp_no , grouping and eff_date and different descr values). If that is true, then both, row_number and first/last can pick up any descr from the set of rows, in this case the sort key should be extended to identifiy rows uniquely. Btw, the approach to use merge instead of update in similar situations i seen first time somewhere on AskTom.</p>
<p>Best regards</p>
<p>Maxim</p>
]]></content:encoded>
	</item>
</channel>
</rss>
