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.96) (envelope-from ) id 1whCVE-0004Z7-0W for pgsql-general@arkaria.postgresql.org; Tue, 07 Jul 2026 20:34:48 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1whCVC-002TNt-2J for pgsql-general@arkaria.postgresql.org; Tue, 07 Jul 2026 20:34:47 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1whCVC-002TNl-1F for pgsql-general@lists.postgresql.org; Tue, 07 Jul 2026 20:34:47 +0000 Received: from mail-qk1-x735.google.com ([2607:f8b0:4864:20::735]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1whCVA-0000000062B-1RRn for pgsql-general@postgresql.org; Tue, 07 Jul 2026 20:34:46 +0000 Received: by mail-qk1-x735.google.com with SMTP id af79cd13be357-92b21f65b60so73603085a.1 for ; Tue, 07 Jul 2026 13:34:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1783456483; cv=none; d=google.com; s=arc-20260327; b=fm3PoM91Z466bSKMUIztmt5rg4gdmNmrdmtIZgqHt8L6TiTTpA/Ji9dxbKkZ5iqebQ dJ5I1Izzv9rAb1L9iGSyVc1IDQaXyl3qPzR4i/1untIfwFDif5uDqFLNpDYBHgU3/Aps 22Pf64/NJrT1GSepUpMyk9etKDpuQYeCNHnyw+y84kvDJdI5L/cFHRx6xBMn5BxogY99 105Wy/jtMsDo7GA3svAkEXGDj6QLfcR5gfv+qnoRWyjBkENGGlrA7b/MRV8nP8gmtvc2 6ILk+uXQlGxqeDW9VxWc/t8b1TJEmhcWRGcvWM+gClIAghx6LD3ErwJbt4mKVy3aRlMa XbPw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=atdybFYBsyc5HdEedGblT4aZjTjC0fSGv8qQv0QxF5M=; fh=SBEnIqtKkitHJMs032i24tdugnHiPulMEGUC9wsPIJQ=; b=byetQfzgjnBHA/8UpBaAv1NvZoZpXCwubbY+BExEI1rZWw0LkWpPNSmsis3zAj71d5 QKegCW0W2/yULLEaOxutosYqeyh9KAVh7sHx5GPwNiJwmiL6bKghPATJqXHuUUgYOtGb eYL3mcRN1JrKDI5R3IemEMRotrFuU3oMJ8H1hBFLM95VwMB8Uy4PzXZckozLdx0UsUYG xsKYlofhq12D77CfYukKHE3LAf7r3PuhZ40EOQuLXyo1XFzBB9DOVPq1q5a1JaqT7dNU /te/tMvtGws1xAvIbg3AzKU7VQdH7Zs3mwnwdtpUbvr34BnUq05FK5SDfBBQegwwoRV/ 6P/A==; darn=postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1783456483; x=1784061283; darn=postgresql.org; h=content-type:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:from:to:cc:subject:date:message-id:reply-to :content-type; bh=atdybFYBsyc5HdEedGblT4aZjTjC0fSGv8qQv0QxF5M=; b=jDAdSRN0ihty0x5NdY/z/gBhs29UfYF0J+Dp24P6q5HMxH8rMuumZ0mLsBKwfeIPfV PqOLzxVxfEus2LTdf9BZW0+GuJsfNk4igzqY4aYOG7ctAQMNDHU7gPVHkctAnQrl5cOH YbiGabYyR5sHUztOv7c9iTFWqtOFULE/Q2L+Eon1QXqQRhlJyTRuwIjn/F+g40TLETvl XPzFcV2fNTxF7GmkTY5xi203HNIdHz0WsPsq4zLdQHEHbvlUH+HQQOhbtadSRNepZDg2 xR0F9VzG/FH91ZlV9cgCNr9HFwfRL5buskruVco6l/1saLUj1EQy5EW+C+DBoxGTMyWW iZHg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1783456483; x=1784061283; h=content-type:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to:content-type; bh=atdybFYBsyc5HdEedGblT4aZjTjC0fSGv8qQv0QxF5M=; b=cno9VHoKCpQ7G8IAEc4I3JxfWCn9L2LSSJycWX+5pcxNyVQFoJg7xRoaOXezbTNYUd VDRnyCyNPz+mlfaQzAGNxuMZ72LsEisk2el4abSI/J91Y2P042ns1RwUxRwCp6C1AZN6 i5I76O5sfG3LMaXRURVOJ9dhr8J01EaaH/98SoTZS1NSRpYyVJCbx1wGe0jyRXd5JegT /PsDEN64aSup/xVoLn97aPVKi/dc8CwM4r0RZFTohRyVaJLxzeAtOBAPl3xQo7vTHqzZ wK4iCwWfp/UqTpE1SDRo3Fp+gAOc2FlM303l6UKAG0KAwxYCmXiaLo8Qi70yeoqIALQh vtfQ== X-Forwarded-Encrypted: i=1; AHgh+Ro7azHSA4/HAIq3xNMQo7W27GZIU3QORA8So+h3bWoyGYvbwrGAL2KcOXApXgHaLZXndYR1YHIj0e2ld3ly@postgresql.org X-Gm-Message-State: AOJu0YwH28pf9mz8Eb0T34XJTZcfc4sbbl34TaGkd6hl9Ys7+g2SiNnE 1kX2BtUeOorR0LZydM+DXPwZvW8YCFKt1vraDl/Rdzruo20QWp3dyuAReiM9ozVmeSyRl8uPMcw MS4VOXrQhnbwHfF2JEsPRRaUBI8jes9A= X-Gm-Gg: AfdE7cn7169Zabd5v6ovAYGIxTjtufpowFVZGkYdXZR7UTHSYmGgE511nkE32f0BGR0 eq0NXBlW418uRNg795PcgfRBU56CHW7UybacbMgOWvwM8+z31TtJNkYMzkaYfsYYyM5wPWq9QRN RpFWqSb49CysSWBrcOxWqPuiPBOvoS7PZVuLtCF1ZTg40uTo8lpbuXKCmeZOLchkSxfV91tVcyU ujkcHlVMnzYiDHvvTGGNvuEkjGa7Hq7UajUXYI5k8w35egHvaFB/KdfT46nh8O3Mv+cwN/WAaJe Kc42vGzXgSUwiMtwKgUWaXBvVQ== X-Received: by 2002:a05:6214:5b02:b0:8fd:6e22:6632 with SMTP id 6a1803df08f44-8fd74100174mr48136716d6.30.1783456483303; Tue, 07 Jul 2026 13:34:43 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Merlin Moncure Date: Tue, 7 Jul 2026 14:34:29 -0600 X-Gm-Features: AVVi8Cdjfz4zI7c0TjyDtwiBJEJkveymjH65wsudIp9KS14WIzG-EaGTp_Ii_qU Message-ID: Subject: Re: Suggestion for Easier Cross-Database Query Handling in PostgreSQL To: Isaac Morland Cc: Shivam Pandey , pgsql-general@postgresql.org Content-Type: multipart/alternative; boundary="00000000000028e38306560b5295" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --00000000000028e38306560b5295 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, May 15, 2026 at 8:15=E2=80=AFPM Isaac Morland wrote: > On Fri, 15 May 2026 at 18:06, Shivam Pandey > wrote: > >> Hello PostgreSQL Team, >> >> I would like to share feedback from a developer perspective regarding >> cross-database querying in PostgreSQL. >> >> One feature that many developers appreciate in MySQL is the ability to >> directly query and join tables across multiple databases within the same >> server instance. This approach becomes very useful in real-world situati= ons >> where applications need to access shared or distributed data quickly and >> efficiently. >> > > What MySQL calls databases PostgreSQL calls schemas, and PostgreSQL > certainly has the ability to query and join tables across schemas. > > What MySQL might call an instance (a collection of MySQL databases) > PostgreSQL calls a database (a collection of PostgreSQL schemas). A singl= e > PostgreSQL instance has the ability to host multiple databases (albeit > sharing a single set of roles and role relationships). Can MySQL query an= d > join across multiple instances? > mysql treats SCHEMA and DATABASE the same. So the features are at parity from an isolation standpoint. (This is also why you won't get this feature since most of the benefits from cross database querying are already present). Besides. postgres schemas are better in pretty much every way, mainly due to the games you can play with search_path and plan invalidation, especially in p/pgsql. merlin --00000000000028e38306560b5295 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Fri, May 15, 2026 at 8:15=E2=80=AFPM Isaac Morland <isaac.morland@gmail.com> wrote:=
On Fri, 15 = May 2026 at 18:06, Shivam Pandey <shivampandey91199@gmail.com> wrote:
Hello PostgreSQL Team,

<= div dir=3D"auto">I would like to share feedback from a developer perspectiv= e regarding cross-database querying in PostgreSQL.
<= br>
One feature that many developers appreciate in M= ySQL is the ability to directly query and join tables across multiple datab= ases within the same server instance. This approach becomes very useful in = real-world situations where applications need to access shared or distribut= ed data quickly and efficiently.

What MySQL calls databases PostgreSQL calls schemas, and PostgreSQL certa= inly has the ability to query and join tables across schemas.
What MySQL=C2=A0might call an instance (a collection of MySQL d= atabases) PostgreSQL calls a database (a collection of PostgreSQL schemas).= A single PostgreSQL instance has the ability to host multiple databases (a= lbeit sharing a single set of roles and role relationships). Can MySQL quer= y and join across multiple instances?
mysql treats SCHEMA and DATABASE the same.=C2=A0 =C2=A0So the = features are at parity from an isolation standpoint.=C2=A0 (This is also wh= y you won't get this feature since most of the benefits from cross data= base querying are already present).

Besides. postg= res schemas are better in pretty much every way, mainly due to the games yo= u can play with search_path and plan invalidation, especially in p/pgsql.

merlin
--00000000000028e38306560b5295--