<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>select * from depesz; &#187; window functions</title>
	<atom:link href="http://www.depesz.com/tag/window-functions/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.depesz.com</link>
	<description></description>
	<lastBuildDate>Tue, 07 Feb 2012 13:35:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>How to group messages into chats?</title>
		<link>http://www.depesz.com/2010/09/12/how-to-group-messages-into-chats/</link>
		<comments>http://www.depesz.com/2010/09/12/how-to-group-messages-into-chats/#comments</comments>
		<pubDate>Sun, 12 Sep 2010 13:13:31 +0000</pubDate>
		<dc:creator>depesz</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[cte]]></category>
		<category><![CDATA[group by]]></category>
		<category><![CDATA[groups]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[rhodiumtoad]]></category>
		<category><![CDATA[window]]></category>
		<category><![CDATA[window functions]]></category>

		<guid isPermaLink="false">http://www.depesz.com/?p=1837</guid>
		<description><![CDATA[My jabber server had the feature, that it logs all messages that got sent through it. This is pretty cool, and useful. And now, i got asked to use it to create list of conversations. What exactly is this? Whenever I send (or receive) something there is record in database with information about which local [...]]]></description>
		<wfw:commentRss>http://www.depesz.com/2010/09/12/how-to-group-messages-into-chats/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>How to order by some random &#8211; query defined &#8211; values?</title>
		<link>http://www.depesz.com/2010/07/25/how-to-order-by-some-random-query-defined-values/</link>
		<comments>http://www.depesz.com/2010/07/25/how-to-order-by-some-random-query-defined-values/#comments</comments>
		<pubDate>Sun, 25 Jul 2010 11:30:51 +0000</pubDate>
		<dc:creator>depesz</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[generate_series]]></category>
		<category><![CDATA[order]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[row_number]]></category>
		<category><![CDATA[unnest]]></category>
		<category><![CDATA[window]]></category>
		<category><![CDATA[window functions]]></category>

		<guid isPermaLink="false">http://www.depesz.com/?p=1775</guid>
		<description><![CDATA[Let&#8217;s imagine simple situation &#8211; you have table of objects (each with id), and you want objects 3, 71, 5 and 16. And in that order! How to do it? First, let&#8217;s create some test data: CREATE TABLE test_data &#40; id INT4 PRIMARY KEY, codename TEXT &#41;; INSERT INTO test_data &#40; id, codename &#41; SELECT [...]]]></description>
		<wfw:commentRss>http://www.depesz.com/2010/07/25/how-to-order-by-some-random-query-defined-values/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Tips n&#8217; tricks &#8211; rank on changes</title>
		<link>http://www.depesz.com/2010/05/13/tips-n-tricks-rank-on-changes/</link>
		<comments>http://www.depesz.com/2010/05/13/tips-n-tricks-rank-on-changes/#comments</comments>
		<pubDate>Thu, 13 May 2010 14:19:32 +0000</pubDate>
		<dc:creator>depesz</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[changes]]></category>
		<category><![CDATA[count]]></category>
		<category><![CDATA[lag]]></category>
		<category><![CDATA[nullif]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[rank]]></category>
		<category><![CDATA[tnt]]></category>
		<category><![CDATA[window functions]]></category>

		<guid isPermaLink="false">http://www.depesz.com/?p=1696</guid>
		<description><![CDATA[I got asked this: having this table: # select * from a order by d; t &#124; d ---+---- O &#124; 1 O &#124; 2 O &#124; 3 M &#124; 4 M &#124; 5 M &#124; 6 M &#124; 7 O &#124; 8 O &#124; 9 O &#124; 10 I &#124; 11 I &#124; 12 [...]]]></description>
		<wfw:commentRss>http://www.depesz.com/2010/05/13/tips-n-tricks-rank-on-changes/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Profiling stored procedures/functions</title>
		<link>http://www.depesz.com/2010/03/18/profiling-stored-proceduresfunctions/</link>
		<comments>http://www.depesz.com/2010/03/18/profiling-stored-proceduresfunctions/#comments</comments>
		<pubDate>Thu, 18 Mar 2010 12:56:06 +0000</pubDate>
		<dc:creator>depesz</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[cte]]></category>
		<category><![CDATA[function]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[procedure]]></category>
		<category><![CDATA[profiling]]></category>
		<category><![CDATA[sproc]]></category>
		<category><![CDATA[stored]]></category>
		<category><![CDATA[stored procedure]]></category>
		<category><![CDATA[trigger]]></category>
		<category><![CDATA[window functions]]></category>
		<category><![CDATA[with]]></category>

		<guid isPermaLink="false">http://www.depesz.com/?p=1644</guid>
		<description><![CDATA[One database that I am monitoring uses a lot of stored procedures. Some of them are fast, some of them are not so fast. I thought &#8211; is there a sensible way to diagnose which part of stored procedure take the most time? I mean &#8211; I could just put the logic into application, and [...]]]></description>
		<wfw:commentRss>http://www.depesz.com/2010/03/18/profiling-stored-proceduresfunctions/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Waiting for 9.0 &#8211; extended frames for window functions</title>
		<link>http://www.depesz.com/2010/02/17/waiting-for-9-0-extended-frames-for-window-functions/</link>
		<comments>http://www.depesz.com/2010/02/17/waiting-for-9-0-extended-frames-for-window-functions/#comments</comments>
		<pubDate>Wed, 17 Feb 2010 14:14:47 +0000</pubDate>
		<dc:creator>depesz</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[frames]]></category>
		<category><![CDATA[pg85]]></category>
		<category><![CDATA[pg90]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[window functions]]></category>

		<guid isPermaLink="false">http://www.depesz.com/?p=1599</guid>
		<description><![CDATA[On 12th of February Tom Lane committed patch by Hitoshi Harada: Log Message: ----------- Extend the set of frame options supported for window functions. &#160; This patch allows the frame to start from CURRENT ROW (in either RANGE or ROWS mode), and it also adds support for ROWS n PRECEDING and ROWS n FOLLOWING start [...]]]></description>
		<wfw:commentRss>http://www.depesz.com/2010/02/17/waiting-for-9-0-extended-frames-for-window-functions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Waiting for 8.4 &#8211; window functions</title>
		<link>http://www.depesz.com/2009/01/21/waiting-for-84-window-functions/</link>
		<comments>http://www.depesz.com/2009/01/21/waiting-for-84-window-functions/#comments</comments>
		<pubDate>Wed, 21 Jan 2009 17:06:25 +0000</pubDate>
		<dc:creator>depesz</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[aggregate]]></category>
		<category><![CDATA[avg]]></category>
		<category><![CDATA[cumulative sum]]></category>
		<category><![CDATA[groups]]></category>
		<category><![CDATA[partitions]]></category>
		<category><![CDATA[pg84]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[rownum]]></category>
		<category><![CDATA[sum]]></category>
		<category><![CDATA[window functions]]></category>

		<guid isPermaLink="false">http://www.depesz.com/?p=1369</guid>
		<description><![CDATA[A long overdue post about new functionality. At this moment it is no longer such new, as it was committed on 28th of December (yes, I know, I should have written it earlier, Sorry). On this day Tom Lane committed patch by Hitoshi Harada which adds support for so called window functions: Support window functions [...]]]></description>
		<wfw:commentRss>http://www.depesz.com/2009/01/21/waiting-for-84-window-functions/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Waiting for 8.4 &#8211; Window Functions &#8211; teaser</title>
		<link>http://www.depesz.com/2008/12/29/waiting-for-84-window-functions-teaser/</link>
		<comments>http://www.depesz.com/2008/12/29/waiting-for-84-window-functions-teaser/#comments</comments>
		<pubDate>Mon, 29 Dec 2008 18:51:16 +0000</pubDate>
		<dc:creator>depesz</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[pg84]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[window functions]]></category>

		<guid isPermaLink="false">http://www.depesz.com/?p=1359</guid>
		<description><![CDATA[Yesterday Tom Lane committed enormous patch, which had commit log: Support window functions a la SQL:2008. &#160; Hitoshi Harada, with some kibitzing from Heikki and Tom. &#8230; and that would be all. I will write more about it, its use cases, and some detailed examples but now I&#8217;m on vacation, and will stay here for [...]]]></description>
		<wfw:commentRss>http://www.depesz.com/2008/12/29/waiting-for-84-window-functions-teaser/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

