Re: combine SQL SELECT statements into one

From: "Igor Neyman" <ineyman(at)perceptron(dot)com>
To: <Chris(dot)Ellis(at)shropshire(dot)gov(dot)uk>, <neilstylz(at)yahoo(dot)com>
Cc: <pgsql-general(at)postgresql(dot)org>
Subject: Re: combine SQL SELECT statements into one
Date: 2010-02-01 19:09:48
Message-ID: F4C27E77F7A33E4CA98C19A9DC6722A2057D815E@EXCHANGE.corp.perceptron.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-novice pgsql-sql

> -----Original Message-----
> From: Chris(dot)Ellis(at)shropshire(dot)gov(dot)uk
> [mailto:Chris(dot)Ellis(at)shropshire(dot)gov(dot)uk]
> Sent: Monday, February 01, 2010 4:08 AM
> To: neilstylz(at)yahoo(dot)com
> Cc: pgsql-general(at)postgresql(dot)org
> Subject: Re: combine SQL SELECT statements into one
>
>
> Hi
>
> pgsql-general-owner(at)postgresql(dot)org wrote on 02/01/2010 07:36:55 AM:
>
> > Good Evening, Good Morning Wherever you are whenever you
> may be reading this.
> >
> >
> snip
> >
> > count1 | count2 | count3
> > -------------------------------
> > 2 2 4
> >
> > Can this be done with ONE SQL STATEMENT? touching the
> database only ONE time?
>
> You can do the following:
>
> SELECT
> (SELECT COUNT(distinct model) FROM inventory WHERE
> modified >= '2010-02-01') AS "COUNT_1",
> (SELECT COUNT(distinct model) FROM inventory WHERE
> modified >= '2010-01-20') AS "COUNT_2",
> (SELECT COUNT(distinct model) FROM inventory WHERE
> modified >= '2010-01-01') AS "COUNT_3"
> ;
>
> PostgreSQL allows sub-queries in the select list as long as
> the sub-query returns one column
>
> Job done
>
> > Please let me know.
> >
> > Thanx> :)
> > NEiL
> >
>
> Chris Ellis
>
> **************************************************************
> ****************
>
> If you are not the intended recipient of this email please do
> not send it on
>
> to others, open any attachments or file the email locally.
>
> Please inform the sender of the error and then delete the
> original email.
>
> For more information, please refer to
> http://www.shropshire.gov.uk/privacy.nsf
>
> **************************************************************
> ****************
>
> Help prevent the spread of swine flu. CATCH IT. BIN IT. KILL IT.
>
> **************************************************************
> ****************
>

Original poster asked for the sql that will touch inventory table only
once.

Your statement (with 3 subqueries) will do it 3 times.

Igor Neyman

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message frank joerdens 2010-02-01 20:22:38 Locking referenced table when creating and dropping tables with foreign key constraints
Previous Message Andreas Kretschmer 2010-02-01 18:30:13 Re: How Copy from a view to CSV file

Browse pgsql-novice by date

  From Date Subject
Next Message Scott Marlowe 2010-02-01 20:25:41 Re: combine SQL SELECT statements into one
Previous Message Machiel Richards 2010-02-01 13:24:59 postgres training

Browse pgsql-sql by date

  From Date Subject
Next Message Lee Hachadoorian 2010-02-01 19:22:47 Re: Crosstab Confusion
Previous Message Adam Sherman 2010-02-01 16:52:16 Re: Crosstab Confusion