Received: from makus.postgresql.org (makus.postgresql.org [98.129.198.125]) by mail.postgresql.org (Postfix) with ESMTP id E97A61BFF91D for ; Fri, 6 Apr 2012 17:13:33 -0300 (ADT) Received: from mail-pb0-f46.google.com ([209.85.160.46]) by makus.postgresql.org with esmtp (Exim 4.72) (envelope-from ) id 1SGFXJ-00008b-2g for pgsql-sql@postgresql.org; Fri, 06 Apr 2012 20:13:33 +0000 Received: by pbcun15 with SMTP id un15so2944946pbc.19 for ; Fri, 06 Apr 2012 13:13:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=keE7LqP9Cmh33LCPeV+QrV7V2aUezdLJ4GdGhBci2Ms=; b=IuzPSP/camDKH7n63TxUYR/6Lfe+n2FEg2wdR82T4wnsFzQQaWIzcjFdZ0C+MCp1vq 7KW0zCesVVBw+OvcfjWoZH0DNua3wOli14AoHkKxSV86QMnCU8mQpau1hUWpxAM0hWsO 1fXJBtiz4Ya6AadEtM3iN0bclQshI52XTAhTH/qxw6dB1SyegPFwuO27u1f+FT0W3Yz1 HQXDDa2EDIUfvED3CuhXHWr0avCzYgNYiXxDePv0ndqNXAqSjVfp+Z6aL/vq2SbP4HjQ KzIetfZ+ybipM9OPiJBE3A4ben98dMxolAgKGqQenh+WPC/bNYog1d/bflSsxM8mtbUG VK8A== Received: by 10.68.200.194 with SMTP id ju2mr5032604pbc.31.1333743200424; Fri, 06 Apr 2012 13:13:20 -0700 (PDT) Received: from [172.16.1.88] ([208.187.158.94]) by mx.google.com with ESMTPS id g8sm7115440pbo.25.2012.04.06.13.13.18 (version=SSLv3 cipher=OTHER); Fri, 06 Apr 2012 13:13:19 -0700 (PDT) Message-ID: <4F7F4EB0.6050902@gmail.com> Date: Fri, 06 Apr 2012 14:14:40 -0600 From: Rob Sargent User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:11.0) Gecko/20120329 Thunderbird/11.0.1 MIME-Version: 1.0 To: Pavel Stehule CC: pgsql-sql@postgresql.org Subject: Re: syntax of joins References: <4F7F3CD9.9090103@gmx.net> <4F7F43C8.4010204@gmail.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Pg-Spam-Score: -2.6 (--) X-Archive-Number: 201204/19 X-Sequence-Number: 36496 On 04/06/2012 01:46 PM, Pavel Stehule wrote: > 2012/4/6 Rob Sargent: >> On 04/06/2012 01:23 PM, Pavel Stehule wrote: >>> >>> Hello >>> >>> 2012/4/6 Andreas: >>>> >>>> hi, >>>> >>>> is there a disadvantage to write a join as >>>> >>>> select * >>>> from a, b >>>> where a.id = b.a_id; >>>> >>> >>>> over >>>> >>>> select * >>>> from a join b on a.id = b.a_id; >>>> >>> >>> yes - newer notation has some advantages >>> >>> * clean specification join predicate and filter predicate >>> * simple adaptability to outer join >>> * increased protection against copy/paste bug that introduce Cartesian >>> product >>> >>> Regards >>> >>> Pavel Stehule >>> >>>> -- >>>> Sent via pgsql-sql mailing list (pgsql-sql@postgresql.org) >>>> To make changes to your subscription: >>>> http://www.postgresql.org/mailpref/pgsql-sql >>> >>> >> In other words, no disadvantage :) >> > > Hard to say - for man who fixed critical cartesian products :) in queries > > Pavel but doesn't there remain "a join b on a.id != b.id" (I do use the join syntax -- sometimes, honest) rjs