Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1t3Lml-00C4Yi-Jg for pgsql-general@arkaria.postgresql.org; Tue, 22 Oct 2024 20:47:23 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1t3Lmj-003DDv-Ep for pgsql-general@arkaria.postgresql.org; Tue, 22 Oct 2024 20:47:21 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1t3Lmj-003DCl-1f for pgsql-general@lists.postgresql.org; Tue, 22 Oct 2024 20:47:21 +0000 Received: from mail-ej1-x62d.google.com ([2a00:1450:4864:20::62d]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1t3Lmc-002LMx-UT for pgsql-general@lists.postgresql.org; Tue, 22 Oct 2024 20:47:20 +0000 Received: by mail-ej1-x62d.google.com with SMTP id a640c23a62f3a-a9a6acac4c3so718555966b.0 for ; Tue, 22 Oct 2024 13:47:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cybertec.at; s=cybertec.at; t=1729630033; x=1730234833; darn=lists.postgresql.org; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=0STGZhToEfditMu10BhyNo07I38XX9FKY/3WrxB2jIg=; b=C+OgDdpwdtoLGhiCl3ZclMimgzAH7Iuus2/+AvyCJ7B4HrTU/JNsn5XaoLvDi/aPDP 59F+YHtLCkYjMSzgZWVuQ4fY4etcTHIHjTJUJeFfOPuJ0LhziSlmMqByKQvBVshIKscs r1aDX9JrSovvQZsKScLY/bFvlXcbrUFaSWHBM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1729630033; x=1730234833; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=0STGZhToEfditMu10BhyNo07I38XX9FKY/3WrxB2jIg=; b=PhSccaB0lQwCIfiCiByGR8AtxltF6Rfjc48rz7F4opuR9VOMz4nY6jzsfE6b8XH1Ck WB3ghQuFUSKO4elLoQQ6mvB4wRo3F09SYXew7UH6YW1JvcRWVmOjcnzDIvG46aw2RU5V 0hSZFgxmK9GUNgpNsAhH4xs7ntKz0Nw8mEksVs2cPwfmpemrKjMyGuTf4RJSEq+ywM1J 5834CujEpwj7MBw6quJPi9wzCA4VakcGDr4SjAZmbSdA/KtqueOmdneLv1rhl1IRVuUI GKLM1bP5C/4WzTl9EO+UqvgkCTF1wcS8H548oteFb7E7tnpVf15DHPQNeL4NYQVcH8DN rZIw== X-Gm-Message-State: AOJu0YxzmFFtFUaU/H7zSbF7iOXol/ISqOE/Oop62Oai/FAIZIYt74iS UhbmYhz1LvDjrnYhufu2FysS8gQJmPp9jowt02rN61G+kv77nPR/ND1StOIMYwA= X-Google-Smtp-Source: AGHT+IFERSgxepSJxeaJpZj7S98Kir8MEtrHVdOPMIBkRCtHyDd9vMB/NW0H1d5RxH2HjDxHBUcvMA== X-Received: by 2002:a17:907:7288:b0:a9a:7f84:941d with SMTP id a640c23a62f3a-a9abf845648mr30089366b.6.1729630032640; Tue, 22 Oct 2024 13:47:12 -0700 (PDT) Received: from localhost.localdomain (86.73.73.85.static.otenet.gr. [85.73.73.86]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a9a912f660dsm383370766b.80.2024.10.22.13.47.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 22 Oct 2024 13:47:12 -0700 (PDT) Message-ID: <7fd675e06f99fc29f9c7c738b1d688c53f4f4f06.camel@cybertec.at> Subject: Re: Query performance issue From: Laurenz Albe To: "David G. Johnston" , Ron Johnson Cc: "pgsql-generallists.postgresql.org" Date: Tue, 22 Oct 2024 22:47:11 +0200 In-Reply-To: References: <20241016213610.wbfqj3r7gg5ba6eh@hjp.at> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.52.4 (3.52.4-1.fc40) MIME-Version: 1.0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Tue, 2024-10-22 at 13:06 -0700, David G. Johnston wrote: > On Tue, Oct 22, 2024 at 1:01=E2=80=AFPM Ron Johnson wrote: > > On Tue, Oct 22, 2024 at 3:02=E2=80=AFPM Greg Sabino Mullane wrote: > > > * Don't use the "FROM table1, table2, table3" syntax but use "FROM ta= ble1 JOIN table2 ON (...) JOIN table3 ON (...) > >=20 > > Why? >=20 > Readability is improved when done correctly; and you need to know it for = outer joins anyway, so consistency. Also, you cannot accidentally forget a join condition. Yours, Laurenz Albe