dynamic-static date once again

Поиск
Список
Период
Сортировка
От Tomasz Myrta
Тема dynamic-static date once again
Дата
Msg-id 3BA1228A.948C3F25@lamer.pl
обсуждение исходный текст
Ответ на dynamic-static date  (Tomasz Myrta <jasiek@lamer.pl>)
Ответы Re: dynamic-static date once again
Список pgsql-bugs
Tom Lane wrote:
>
> Tomasz Myrta <jasiek@lamer.pl> writes:
> > Why the first expression is 25 times slower?
>
> Hard to say, when you haven't shown us the schema.  (Column datatypes,
> definitions of available indexes, etc are all critical information for
> this sort of question.)
OK
Don't panic with names, They are polish ;-)

1. TABLES
create table TRASY(
  id_trasy              integer  not null PRIMARY KEY,
  del                   date     default '9999-12-31',
  nazwa                 varchar  (80)
);

create table KURSY(
  id_kursu              integer  not null PRIMARY KEY,
  id_trasy              integer  not null references TRASY,
  data_kursu            date     not null,
  limit_miejsc          smallint not null
);

2. INDEXES

 trasy     |  CREATE UNIQUE INDEX trasy_pkey ON trasy USING btree
(id_trasy int4_ops)
 kursy     |  CREATE UNIQUE INDEX kursy_pkey ON kursy USING btree
(id_kursu int4_ops)
 kursy     |  CREATE INDEX ind_kurs_ ON kursy USING btree (id_trasy
int4_ops, data_kursu date_ops)

3. TEST

This time kursy has less rows:

saik=# EXPLAIN SELECT * from kursy where id_trasy=1 and
saik-# data_kursu=date('2001-12-12');
NOTICE:  QUERY PLAN:

Index Scan using ind_kurs_ on kursy  (cost=0.00..8.19 rows=1 width=14)

EXPLAIN
saik=# EXPLAIN SELECT * from kursy where id_trasy=1
saik-# and data_kursu='2001-12-12';
NOTICE:  QUERY PLAN:

Index Scan using ind_kurs_ on kursy  (cost=0.00..2.02 rows=1 width=14)

I think that's all

Tomek

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

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: Re: plpgsql & temp table -bug
Следующее
От: Tom Lane
Дата:
Сообщение: Re: PQexec infinite loop