Optimizer & boolean syntax

From: Daniele Orlandi <daniele(at)orlandi(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Optimizer & boolean syntax
Date: 2002-11-21 18:39:19
Message-ID: 3DDD2857.9070102@orlandi.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


Are those two syntaxes eqivalent ?

select * from users where monitored;
select * from users where monitored=true;

If the answer is yes, the optimimer probably doesn't agree with you :)

Tested on RC1:

template1=# create table a (a boolean, b text);
CREATE TABLE

.... inserted ~18000 rows with just one true (just to make an index scan
meaningful)....

template1=# vacuum analyze a;
VACUUM
template1=# explain select * from a where a;
QUERY PLAN
----------------------------------------------------
Seq Scan on a (cost=0.00..802.64 rows=1 width=11)
Filter: a
(2 rows)

template1=# explain select * from a where a=true;
QUERY PLAN
--------------------------------------------------------------
Index Scan using a_a on a (cost=0.00..2.01 rows=1 width=11)
Index Cond: (a = true)
(2 rows)

Bye!

--
Daniele Orlandi
Planet Srl

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Thomas O'Connell 2002-11-21 18:53:46 Re: [GENERAL] Bug with sequence
Previous Message Bruce Momjian 2002-11-21 18:20:17 Re: xBSD shmem doc deficiency