Table alias fun == incorrectly adding tables to join...
От | Sean Chittenden |
---|---|
Тема | Table alias fun == incorrectly adding tables to join... |
Дата | |
Msg-id | 20030922195507.GD27834@perrin.nxad.com обсуждение исходный текст |
Ответы |
Re: Table alias fun == incorrectly adding tables to join...
Re: Table alias fun == incorrectly adding tables to join... |
Список | pgsql-bugs |
Here's a fun one. test=# CREATE TABLE table_s1 (i int); test=# CREATE TABLE table_s2 (j int); test=# EXPLAIN ANALYZE SELECT table_s1.i, table_s2.j FROM table_s1 AS s1, table_s2 AS s2 WHERE s1.i = s2.j; NOTICE: adding missing FROM-clause entry for table "table_s1" NOTICE: adding missing FROM-clause entry for table "table_s2" QUERY PLAN --------------------------------------------------------------------------------------------------------------------- Nested Loop (cost=0.00..0.03 rows=1 width=8) (actual time=0.03..0.03 rows=0 loops=1) -> Nested Loop (cost=0.00..0.02 rows=1 width=4) (actual time=0.02..0.02 rows=0 loops=1) -> Nested Loop (cost=0.00..0.01 rows=1 width=0) (actual time=0.01..0.01 rows=0 loops=1) Join Filter: ("outer".i = "inner".j) -> Seq Scan on table_s1 s1 (cost=0.00..0.00 rows=1 width=4) (actual time=0.01..0.01 rows=0 loops=1) -> Seq Scan on table_s2 s2 (cost=0.00..0.00 rows=1 width=4) (never executed) -> Seq Scan on table_s1 (cost=0.00..0.00 rows=1 width=4) (never executed) -> Seq Scan on table_s2 (cost=0.00..0.00 rows=1 width=4) (never executed) Total runtime: 0.20 msec (9 rows) If there's real data in the tables, this joins the tables on itself and execution times explode, naturally. I don't know if the spec says this is the correct behavior or not, but I have a feeling its not and this is a bug. -sc -- Sean Chittenden
В списке pgsql-bugs по дате отправления: