pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Harald Fuchs <nospam@sap.com>
To: pgsql-sql@postgresql.org
Subject: Re: Result set granularity..
Date: 29 Sep 2003 16:07:49 +0200
Message-ID: <pulls7adsa.fsf@srv.protecting.net> (raw)
References: <59410.193.243.134.6.1064668289.squirrel@www.defero.se>

In article <59410.193.243.134.6.1064668289.squirrel@www.defero.se>,
"Rasmus Aveskogh" <rasmus@defero.se> writes:

> Hi,

> Since I went from Oracle to PostgreSQL I've been missing the "invisable"
> column 'rownum'. I often used it to lower the granularity of my data.
> For example, say I have a large table containing some sort of statistical
> data and want to plot a graph using it.
> If the graph is 600 pixels wide I might as well lower the granularity of
> my incoming data to 600 measure points before plotting.

> In Oracle I used to do this by using the modulus operator on the rownum
> column as a restriction.

> SELECT <column> FROM <table> WHERE mod(rownum, 5) = 0;

> The query above would give me every fifth row of the original result set
> and would save me from sending the data over my database connection and do
> the lowering of the granularity in the application.

> I have two questions, one dependent on the answer on the other one..

> 1) Is it possible to achieve this any other _easy_ way?

You could fake a rownum by means of a sequence:

CREATE SEQUENCE tmpseq;

SELECT <column>
FROM (
    SELECT nextval ('tmpseq') AS rownum, <column>
    FROM <table>
  ) AS <table>_with_rownum
WHERE rownum % 5 = 0;

DROP SEQUENCE tmpseq;




view thread (6+ messages)  latest in thread

Message-ID: <pulls7adsa.fsf@srv.protecting.net>
Permalink:  ../pulls7adsa.fsf@srv.protecting.net/
Also on:    postgresql.org/message-id/pulls7adsa.fsf@srv.protecting.net

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: nospam@sap.com
  Subject: Re: Result set granularity..
  In-Reply-To: <pulls7adsa.fsf@srv.protecting.net>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox