Re: NEWBEE: 'WHERE true' question - Mailing list pgsql-novice

From GH
Subject Re: NEWBEE: 'WHERE true' question
Date
Msg-id 20001115223658.A13873@over-yonder.net
Whole thread Raw
In response to NEWBEE: 'WHERE true' question  (OTR Comm <otrcomm@wildapache.net>)
List pgsql-novice
On Wed, Nov 15, 2000 at 09:16:37PM -0700, some SMTP stream spewed forth:
> Hello,
>
*snip*
> A snippet from this code is as follows:
>
> ...
>   $where = 'true';
>   if ($form->{number}) {
>     $callback .= "&number=$form->{number}";
>     $where .= " AND number ~* '$form->{number}'";
>   }
>   if ($form->{description}) {
>     $callback .= "&description=$form->{description}";
>     $where .= " AND description ~* '$form->{description}'";
>   }
>
>   $query = qq|SELECT id, number, description, onhand, unit, sellprice
>                 FROM parts
>                 WHERE $where
>                 ORDER BY $form->{sort}
>              |;
> ...
>
> Now if the two 'if' conditionals are false, the query becomes:
>
> SELECT id, number, description, onhand, unit, sellprice
>                 FROM parts
>                 WHERE true
>                 ORDER BY number
>
>
> What does it mean here for the WHERE to be true?  What is being tested
> for true?  Is this just a 'place holder', if you will, for the WHERE
> field in case the two 'if' conditionals are false and so the WHERE field
> is not blank?
>

Er, I hope this helps.
< http://www.postgresql.org/docs/user/sql-select.htm#SQL-WHERE >

It looks like the 'true' is just in there to ensure that all rows are
returned.
I can't think of why someone wolud do that..


G'luck and
cheers
gh

> Thanks,
> Murrah Boswell
>

pgsql-novice by date:

Previous
From: Sandeep Joshi
Date:
Subject: questions - WAL And Sets, Lists, Ref
Next
From: Tom Lane
Date:
Subject: Re: Granting Browser Access to pgsql database.