Re: Selecting pairs of numbers

From: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
To: rod(at)iol(dot)ie, 'PostgreSQL' <pgsql-general(at)postgresql(dot)org>
Subject: Re: Selecting pairs of numbers
Date: 2015-10-05 18:53:37
Message-ID: 5612C731.405@aklaver.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 10/05/2015 11:39 AM, Raymond O'Donnell wrote:
> Hello all,
>
> I have an SQL problem which ought to be simple, but I can't get my head
> around it.
>
> I have pairs of integers - let's call them (x, y). In effect, x is a
> category, while y is an item within that category. For every x, there is
> always the same number of integers y; and both x and y are always
> numbered sequentially starting from 1.
>
> My problem is that I need to select a list of these pairs, ordered first
> on x and then on y, from a given starting point to a given finishing
> point and including all pairs in between.
>
> For example, I might have:
>
> x | y
> -----
> 1 | 1
> 1 | 2
> 1 | 3
> 1 | 4
> 2 | 1
> 2 | 2
> 2 | 3
> 2 | 4
> (etc)
>
> I then might want to extract a list from, say, (1, 3) to (3, 2), giving:
>
> x | y
> -----
> 1 | 3
> 1 | 4
> 2 | 1
> 2 | 2
> 2 | 3
> 2 | 4
> 3 | 1
> 3 | 2
>
> For the life of me, I can't figure out how to do this. Any help will be
> appreciated, or even just a pointer in the right direction. There's
> probably something simple that I'm just not seeing....

aklaver(at)test=> create table pr_test(x int, y int);

aklaver(at)test=> select * from pr_test where (x, y) between (1, 3) and
(3,2) order by x,y;
x | y
---+---
1 | 3
1 | 4
2 | 1
2 | 2
2 | 3
2 | 4
3 | 1
3 | 2

>
> If anyone's interested, these numbers represent channels and pistons on
> the combination system of a largish pipe organ... it's for a hobby project.
>
> Many thanks in advance!
>
> Ray.
>
>

--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Raymond O'Donnell 2015-10-05 19:00:12 Re: Selecting pairs of numbers
Previous Message Chris Mair 2015-10-05 18:50:11 Re: Selecting pairs of numbers