X-Original-To: pgsql-performance-postgresql.org@localhost.postgresql.org Received: from localhost (av.hub.org [200.46.204.144]) by postgresql.org (Postfix) with ESMTP id CA9159DCA12 for ; Wed, 14 Dec 2005 17:45:19 -0400 (AST) Received: from postgresql.org ([200.46.204.71]) by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024) with ESMTP id 02510-03 for ; Wed, 14 Dec 2005 17:45:20 -0400 (AST) X-Greylist: delayed 00:06:40.04202 by SQLgrey- Received: from peufeu.com (boutiquenumerique.com [82.67.9.10]) by postgresql.org (Postfix) with ESMTP id 320689DC9D4 for ; Wed, 14 Dec 2005 17:45:16 -0400 (AST) Received: (qmail 2671 invoked from network); 14 Dec 2005 22:38:51 +0100 Received: from boutiquenumerique.com (HELO peufeu.com) (82.67.9.10) by boutiquenumerique.com with SMTP; 14 Dec 2005 22:38:51 +0100 To: "Zoltan Boszormenyi" , pgsql-performance@postgresql.org Subject: Re: Auto-tuning a VIEW? References: <43A08EF5.4060306@dunaweb.hu> Message-ID: Date: Wed, 14 Dec 2005 22:38:49 +0100 From: PFC Content-Type: text/plain; format=flowed; delsp=yes; charset=utf-8 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In-Reply-To: <43A08EF5.4060306@dunaweb.hu> User-Agent: Opera M2/8.51 (Linux, build 1462) X-Virus-Scanned: by amavisd-new at hub.org X-Spam-Status: No, score=0 required=5 tests=[none] X-Spam-Score: 0 X-Spam-Level: X-Archive-Number: 200512/333 X-Sequence-Number: 16154 > create view v1 (code,num) as > select 'AAA',id from table1 > union > select 'BBB',id from table2; As your rows are, by definition, distinct between each subquery, you should use UNION ALL instead of UNION to save postgres the trouble of hunting non-existing duplicates. This will save you a few sorts. > select * from v1 where code||num = 'AAA2005000001'; Why don't you use code='AAA' and num='2005000001' ?