Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ch6Al-0000Wb-Sg for pgsql-hackers@arkaria.postgresql.org; Fri, 24 Feb 2017 03:03:55 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1ch6Al-0008Dy-6N for pgsql-hackers@arkaria.postgresql.org; Fri, 24 Feb 2017 03:03:55 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ch6Ac-000855-2l for pgsql-hackers@postgresql.org; Fri, 24 Feb 2017 03:03:46 +0000 Received: from mail-co1nam03on0048.outbound.protection.outlook.com ([104.47.40.48] helo=NAM03-CO1-obe.outbound.protection.outlook.com) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ch6AY-0001TC-D8 for pgsql-hackers@postgresql.org; Fri, 24 Feb 2017 03:03:45 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=BlueTreble.onmicrosoft.com; s=selector1-bluetreble-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Kmf2BOj0RDGiENwKEbF42eHzYy5RgrC1LsMAPZnspnQ=; b=dGqRtQkPkuEcQgUEYZIVgHq0dLS/MSqUS5O2oOZB0FNZpm4kTBCN2xh9DF7cnAkZ9B3HoRrtFqYRjv+IuSP8QcBLYXiB+y0F9xtlXVKKCUDp4UpT1UHAe/cmlSouTtBto2esmIKZJl+/oHLZa7oZtoRDqXxMrcCQkIxMknlRsZo= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jim.Nasby@bluetreble.com; Received: from decina.attlocal.net (2602:306:ce8b:3460:455:9195:3926:af88) by DM5PR11MB1643.namprd11.prod.outlook.com (10.172.38.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.933.12; Fri, 24 Feb 2017 03:03:37 +0000 Subject: Re: Idea on how to simplify comparing two sets To: Corey Huinker References: <15376.1486483121@sss.pgh.pa.us> <6491.1486490594@sss.pgh.pa.us> <595203eb-73c3-cffa-7b7d-3f35d87e575a@BlueTreble.com> CC: Tom Lane , "David G. Johnston" , Joel Jacobson , Pg Hackers From: Jim Nasby Message-ID: <79b72a5e-6b9d-d1f9-a202-6d0972ff995b@BlueTreble.com> Date: Thu, 23 Feb 2017 21:03:31 -0600 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [2602:306:ce8b:3460:455:9195:3926:af88] X-ClientProxiedBy: BN6PR05CA0021.namprd05.prod.outlook.com (10.174.92.162) To DM5PR11MB1643.namprd11.prod.outlook.com (10.172.38.14) X-MS-Office365-Filtering-Correlation-Id: f585791c-18f1-404d-75f2-08d45c61baed X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:DM5PR11MB1643; X-Microsoft-Exchange-Diagnostics: 1;DM5PR11MB1643;3:iqmVho4A193Kaz6WQ5zvYLayA+rohFjxPrbgDJVoR/PPBUM2Bqve8Z8z0hWy+AHU361zP4eb9gnCPitGaExW/87c3aBJl0bHVq8BcBJla/e8NxQ8iaOW+DCEL2XHP3soAGSucUkCZ4saziFtD2TucWLZhDCKd7K2t5tEcWbGXwCJ7eLY1GuDIN8eLxuvSp7GjQjRZtih5jxNkyZizymuVCVIyoYTWrL/NXyvIsQeXIJaAPLumYSO5tjALNzZ+vKlwmtDpQd2/tqKeQK+83ZtSg==;25:AkdynFmasxJcb7nb2855TP3EnDwfdB3O0EtbJsl0P/rTm4KXTuictFjHmtyYsJdMFIvlFOvsxYEiCM1h9N9I1dtcjEnLm+O4MT+OBE5zFLXNVkCF72ox5eaRjM5gcm1OWbsRhTeqVeVRrHUrt+paRxwHaapdNU9u6DZ6GQEmpxpw2oyQ6tdbQmaZ+q/yzUplYlaGlL0hkQBGhQ4H+o4OQyyO9gELXlrQohFK67DzR5/Xop0y24mVww6f1Ge1POnUlm4Y5rI0NVxiGm/g+Lpbjo3+CRqIsb4p5BLG+WhdxDY79P5qJWmz9W3ZyLOoyNqB0lRvS3EW/aHKUBM2T246QybmHHwZLlklsJeyZuC9lFFEcMeeQQFkLGII8dVcyFvMXsg8Hl3tCKyml/Tz4lKS9iAEknJmAqZgASVA6Edo+1j5+b29FxyOefXUizW1/lm1DswwkBhDVJyhoQZGfHXypw== X-Microsoft-Exchange-Diagnostics: 1;DM5PR11MB1643;31:D6nTq3aOxYebcquHsp2dQ8pysKsk/pqAEpgbSb5rYpTgXWRThlp5mVnSDTpAzA+J/+zgGSndR50skhP+y9SVW6HmvAOFDbICThUL0vBLsfpnc0ZLpRDq7Pvpl/aBe/7CUg/ZEki6AY0c9XQhfodbCsOIeIvxrGHJnyVktHYOs1blTNgMLncy7qStlGS8mKj6+S5QqOybCY+05cw+eYMbmvlaOgl+tNdnEpOjbZdp054+YHbvT1CvmFnWN+31Rr5ePAFSALfymiVSJXko3U0AtA== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6041248)(20161123558025)(20161123560025)(20161123555025)(20161123564025)(2016111802025)(20161123562025)(6072148)(6043046);SRVR:DM5PR11MB1643;BCL:0;PCL:0;RULEID:;SRVR:DM5PR11MB1643; X-Microsoft-Exchange-Diagnostics: 1;DM5PR11MB1643;4:l+vMtnVe8mSJKV1SU8Ij1RpN+o2yFteL47/WuIiBvTEsmeNgfKH9gB49NYBpjnwbRnrDPbVU4RIJVhWNayVmYFlubzUn6nobTMdDgVvDyX1LWkkCJWB+u6gz7dOClFWjjOUUXJXJwupetKmzJz05p0lgpkh38leDCkNp1YHskLPNvT0LaPB8MYlPdqDBkeU3DYaw1fk/B5JEfWNuNmsXPJVaiqTcTTqiIM9mbxgr6ZcXsqWPLtEZuyafs1qWxRC5Z7Pp1a5zTsjZe93zANwZKKaJKFn5Kn0OSwbqkO6lMKEjYGwqmiZQye61bf04mnjSSpsMqWBXVIbiQzJzNAmkwoz3rKjK0TIOlqvPF354QKZWWfAvoTjPII9O5Ng3xoPzsOdQ8YhvQrDRtJIKqeLOXqvm1hyX/1kEiYvqagmo9CvIjOlpyjGxieAPVMv6fv1oELn8K5uvEcfYN7FBRAr850VZSNv8Sw3lKO+hA2z8HbrkvIppzjsZpfyEqfCjAz3K7H7GXzVPXaGY27F/7W7o53O7+1yDy+Sc69hLbmYm4YJJhHg+izI6ewYsFBEk6X8mBV7t8evHIOsfkH7oCcoukX2ixd/C04yr/QtkhIy+KJxDnCVYjQU/YPztIz9cuvq9pM1+kQvk//L54wUbWgpucqHl7xRZ8JR1lrb6qS0JJXw= X-Forefront-PRVS: 0228DDDDD7 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(979002)(6009001)(7916002)(39450400003)(39410400002)(39830400002)(199003)(24454002)(377454003)(189002)(31696002)(305945005)(4001350100001)(7736002)(6506006)(25786008)(53936002)(50986999)(97736004)(53546006)(230700001)(6486002)(4326007)(86362001)(81166006)(47776003)(6512007)(54356999)(54906002)(81156014)(76176999)(36756003)(6306002)(8676002)(31686004)(42186005)(106356001)(65956001)(65806001)(50466002)(101416001)(64126003)(105586002)(53416004)(6116002)(2950100002)(6916009)(6666003)(68736007)(229853002)(23676002)(189998001)(92566002)(110136004)(2906002)(33646002)(5660300001)(65826007)(53386004)(6246003)(38730400002)(83506001)(966004)(93886004)(69596002)(85282002)(969003)(989001)(999001)(1009001)(1019001);DIR:OUT;SFP:1101;SCL:1;SRVR:DM5PR11MB1643;H:decina.attlocal.net;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; Received-SPF: None (protection.outlook.com: bluetreble.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtETTVQUjExTUIxNjQzOzIzOmVoMm9LTlRyZDRYWXE5RDJ5M3ByNFZpbjRB?= =?utf-8?B?MDdnbUYraUxsMFRKeEpod2Fjb3l6NjYxRVFCWlVSekNWY05ITmFzM2t0Mk5y?= =?utf-8?B?ZXgxRnJ2OFltTnVwZHBUTFZEUDJKdWJ5a3hhc2hZS2txZEtYb0JjbUQrKzIy?= =?utf-8?B?QVFFVVpEazRhZnFWOGJhd1hKOTd5Wmd4akR5Tkl0bXFIQ3Q3SVNCUmFuQXhC?= =?utf-8?B?VjZjenhWakx5d1p6NGxyb1NsdGFsazNQcTFuTVA3S2daby9mSGlwOG5ya1pr?= =?utf-8?B?S3VXd3FDY2EvYTkxN0psNWs1dHVVcWtHR3lGODRKd3drc1c3enZ4aThaWEhL?= =?utf-8?B?dEo4SkxVaG1rVWZMd0YyUjlWTzhRZHdYZEZPVzdxVGxHLzRZVnJEelkycXRo?= =?utf-8?B?VXpFQTBQZUR2Qi9wTFQwR2VlMExQRVpyaHhnZ1dZMVA1NkdnUG5UdzV0bk1t?= =?utf-8?B?dWxvSlF6QVVQRDBlaWgxL0ZIZko0QVc3M1d1YjhOaGlWdVhEOWZCYm54UzE5?= =?utf-8?B?MzZwRWJGcUFnYi8vTGVJdk1EYi9kZHA4aGNEZXRzQlN1Zko0d0FSNlBoYmln?= =?utf-8?B?VnMxRHBSZExDV1VSbU02TGVyaHp3RzFsWHlYdWU4UU84U2lDU2xwREhyelZu?= =?utf-8?B?OW0wS0xqc3FWSnBoQzN2dEtqVVdyMmhjMzhnUE8rL3VldTRrQmdtaytCTEwr?= =?utf-8?B?RmRuT2ZpcTd3RGc2MjFPYTJnM1EzSVRYVHJxbExSUTFpTlZwVFg0K25lMWV0?= =?utf-8?B?Zk1lSno2bFRZKzgrRnBjWk9ieDZLSU9oZER4K0lqY2JaOU9TaGthOEpLemFx?= =?utf-8?B?cG52WDQ1bDlaamtFUVRyeGs5WjVyUm1ZRmZJb3BVVFQxdjVRWE1qdDBsd0F5?= =?utf-8?B?MmdwRFlJNUlybkJaRk9wYnlIVmhSOG1FSmpaNVpMN0VyTmhQYi8wZUtxcENv?= =?utf-8?B?eWJXZ3lUTTE1OFBTeW5GVGwvLzE3dGhkZGt3YmdyMzgybkFKWDROWjU0cXQ0?= =?utf-8?B?bEpXTXhSa21PTG9BM0ZqMG5Yc2Z4a1h1aldTb0xPaWVjeURMQkJpSkVPZDlX?= =?utf-8?B?cDhUcGU1YzdQKzdXSmNpb0lFMzlzc2FHVFVucG9wVEJvNGoyYlF3dHJha1Bi?= =?utf-8?B?Y0xHeHFVVisrcmpjOHA5T0xrYW5NTEFobmhDZkppaHFzUERMZFMzb2oxSUwv?= =?utf-8?B?S09pbmpiYWVGenZIRGx0ZzFVbVdlUlBUWHBFTW40VXIzR25ZTjR6eDVhL09W?= =?utf-8?B?WGR0Y0xVQXdsQ29Va2FuV0RyT1BDKzNyQWMwRStIdHloUmwremtZbE9UT21W?= =?utf-8?B?Z3JBSEVvZEEzZmkrcFVibXpNa04yblRSTjB5dVhKTDZQRzlWS0ZQTjNTNkJl?= =?utf-8?B?TCtOOXlZUC8zbnFzRFB3MDZDVFFhUjR6dkZOamtzMHUyWW80VkpkYkZjWHRN?= =?utf-8?B?Q2YyWHIxcFFMdGM4NUVYUnNsWTk0T09ValFFVzhEOVd4cW1DbG9iMWw1UUc1?= =?utf-8?B?ZVQ0TFZ3M2pWcHUxV0NhSG42eG5ZRzJ6enNzemZhNWxVZXAxUElyeGZFaXNs?= =?utf-8?B?b3pBTkNjbkwwbExTOTI2ajA3UmxrU2JtODhZU3RBOFFFK0l1aG50RmZpQ1VE?= =?utf-8?B?ZlhvRjVHdmlnTVRJNHNVWFdxc3hhYTQ0Tldtd0ozeStEcmhCZG8zdFRnT0lk?= =?utf-8?B?aTVyRi96d2s2Y1VsdkNUVjgreldEeDdZcW9wUDRlcHFBeE1nK1o4cFRxZTlF?= =?utf-8?B?b3ZUdjN6enJ5a09SWHozK3VLN1ZOS3hjd2tsR3dsMkkvQUs1bUhrd1c2cUxS?= =?utf-8?B?ZytqaExRK3lqNWJmQUN5bnFXNHpFN0VnamlxZzNzbXdLSkYvbXpvU0JRSDNt?= =?utf-8?B?NUVvQkpzcXByNExaZU95VmF6SjhBZVVsY0I1S3JsMENXU3VrTDJLU1N5dm05?= =?utf-8?B?clE4QmF2c2F4VUxwbzNVRW5GMDVUemMzQ09JcGFaellvU0FaT0R0VzBzNVhT?= =?utf-8?B?R0l1MTVRaWNPdTcxazl1THBYZFovejYrUmlNVjlQeEFmRmRtSXFwamZ0aUc2?= =?utf-8?B?WTVpb1NDcm9GVExpMVBaa0gvTmFBd3pRRTUxMCt5SXZ6bStTUTNUTnkwQmtP?= =?utf-8?B?NmphaStObFZpb2JXWloxaFBVWCtCZDlrOGduaVc0Wi9QTnpBL1NXNGYwKzhz?= =?utf-8?B?cGNNSjJzY0wwcVZoOTNtc0pwQUdOWnlqK1hrc0N1bUVVaEZYaVRrZ204ZGVI?= =?utf-8?Q?jPT5ZBNFqFc+3Wb9k4?= X-Microsoft-Exchange-Diagnostics: 1;DM5PR11MB1643;6:Vh4PcWgwRN3+UbdyncXM+LmzWY9ywZrB0nBHD6CBXetGzCj6Sf3F5QkYQO36qVAe7sVwFl+n6zqviU7AUqT0QOWsGwDTWbWmzzBlNY9nLTChCrSV3hvJbjGt552jU7PoBR9I6uGQ0cHlzQKAXhwNHAXTe51iMJJJvXw9EgYjja6lkO8YkAhHj8BvJhSr0ZtNE5Gf+R/Od9QViuasBNxECOz4dTkWccUYbWOhPsKAuASexr2Gohwf701vfLteYPW7xqyodr81mZwMsnDAiWp5fFm8BRHdDljyKEqbheGOjR17LYcvY62CT0pZA6Hon7r/7+ga+weE++d2gmAdUOUxhn/8JWjN8t9T+fxiDuasGdFr8G0fYraIpvEXFiwskfPk3jhJ+C7LP7Jm2M1e1kIxbw==;5:pdLiaQ8LXRGJ8ymo3putLjkweQionYLK2VT+Pz7xVeQ5H871RDh2HHdtpUUFlwOwlZuGvDcCgl1DLYD9O/+RT858OVQNZvJZ/CJ6wpJRWqlsbbpHYCj+DrFAe20HHQ7mfXObWmX1qsmyF6tB62XmJg==;24:xHeY5IuJtS0Sejvr1TXMPMNdqDg4PmnUF6NiXTo5nsNRhIBe+YEwCfKoBbretB6SH3uuEIm6KjD89Y4fOZ2SOZgwQRkc+0/D+O1N8PH/OMk= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;DM5PR11MB1643;7:aOML/Cwk4sVuupyLgT0L05CIJ/sQdvVxEsZdn7UJdol5wVMG9uOUXIIR0YLOvITq2/R1R2ipP+WGAYJJ2lCdEsDI9uJYUKySXNcDZfT0rE/L66QqDGyvIKBnbdnRMyYa1JhysG58Rcq4eZRSKfjyuMl5pq8R8EBI0dy0aWStEAxQf/vsVtNrq3kPoWgQfoLHUcfIk8nTyxLAqDdFxDmM6KtTzCLwD/XtxUyqS2QoegUEqHuD5LfB718xaZDqL3jUJXqN+Cj22ncibIAqm2xhPvJazbJD7RRsGkoPhbo+qgLItCqCJlyt4XvWwYHG5ZPyybkRoMh0bajqfrlxnUS/Bw== X-OriginatorOrg: bluetreble.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Feb 2017 03:03:37.5633 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR11MB1643 X-Pg-Spam-Score: -1.9 (-) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-hackers Precedence: bulk Sender: pgsql-hackers-owner@postgresql.org On 2/23/17 3:33 PM, Corey Huinker wrote: > I've had to do it with temp tables any time the environment is different > between control/experiment, which is the case when you're developing a > drop-in replacement for an SRF or view or whatever. FWIW I'd recommend temp views, to give the planner the most latitude. Less load from (presumably) pointless copying too. -- Jim Nasby, Data Architect, Blue Treble Consulting, Austin TX Experts in Analytics, Data Architecture and PostgreSQL Data in Trouble? Get it in Treble! http://BlueTreble.com 855-TREBLE2 (855-873-2532) -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers