NEWBEE: 'WHERE true' question

Поиск
Список
Период
Сортировка
От OTR Comm
Тема NEWBEE: 'WHERE true' question
Дата
Msg-id 3A135FA5.C82FD67E@wildapache.net
обсуждение исходный текст
Ответы Re: NEWBEE: 'WHERE true' question
Список pgsql-novice
Hello,

I have just started learning about PostgreSQL.  I am fairly familiar
with MySQL/Perl DBI.

I have some perl code that I downloaded that talks to a pgsql database
and am trying to understand one of the queries in this code.

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?

Thanks,
Murrah Boswell


В списке pgsql-novice по дате отправления:

Предыдущее
От: Paul M Foster
Дата:
Сообщение: Moving Databases
Следующее
От: Sandeep Joshi
Дата:
Сообщение: questions - WAL And Sets, Lists, Ref