Good Optimization
От | secret |
---|---|
Тема | Good Optimization |
Дата | |
Msg-id | 37836A99.6989795E@kearneydev.com обсуждение исходный текст |
Ответы |
Re: [SQL] Good Optimization
Re: [SQL] Good Optimization Re: [SQL] Good Optimization |
Список | pgsql-sql |
There is a simple way to optimize SQL queries involving joins to PostgreSQL that I think should be handled by Postgre? If one is joining a tables a,b on attribute "x" and if one has something like x=3 then it helps A LOT to say: a.x=3 and b.x=3 in addition to saying a.x=b.x ... The example below shoulds the radical speed gain of doing this, and I think it isn't something real obvious to most people... Of course it could just be a common thing to do in SQL, anyway, just thought I'd let you all know what I discovered. Here is an example: ftc=> explain select * from po,tickets where po_id=material_po and po_id=8888 ; NOTICE: QUERY PLAN: Nested Loop (cost=401.34 size=6146 width=158) -> Index Scan using ipo_po_id_units on po (cost=2.05 size=2 width=94) -> Index Scan using itickets_mpou on tickets (cost=199.64 size=70650 width=6 4) EXPLAIN ftc=> ftc=> explain select * from po,tickets where po_id=material_po and po_id=8888 an d material_po=8888; NOTICE: QUERY PLAN: Nested Loop (cost=21.42 size=268 width=158) -> Index Scan using ipo_po_id_units on po (cost=2.05 size=2 width=94) -> Index Scan using itickets_material_po on tickets (cost=9.68 size=3073 wid th=64) EXPLAIN ftc=>
В списке pgsql-sql по дате отправления: