Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m4fkk-00059f-LL for pgsql-admin@arkaria.postgresql.org; Sat, 17 Jul 2021 08:32:54 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1m4fkj-0008W0-Ad for pgsql-admin@arkaria.postgresql.org; Sat, 17 Jul 2021 08:32:53 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m4fkj-0008Vq-0v for pgsql-admin@lists.postgresql.org; Sat, 17 Jul 2021 08:32:53 +0000 Received: from mout.gmx.net ([212.227.15.15]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m4fkf-0003dl-Jf for pgsql-admin@lists.postgresql.org; Sat, 17 Jul 2021 08:32:52 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1626510766; bh=stUYeUEjtUXgZrcBe1bhNiEZGqHJpbFDuxz5z4pIYOI=; h=X-UI-Sender-Class:Subject:To:References:From:Date:In-Reply-To; b=f07BET44KcDdmdr90Zqr9XfpN2EcoPYd1COLu+l9f3+7DhsD7/W4KZ5crxqrcvH+C uJvBvF861ED6BTaKkK4dKDodwP5V2Sit5mPCQsJZIQJmtpUXBKxQtMkWMEB2pRmTmD 6o/L8Pa7vX/4MoBbyQlt9Ik5yREaL+Z1HT2nSe3k= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from [192.168.178.20] ([83.171.165.255]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MFsUv-1luWKf23od-00HLyD for ; Sat, 17 Jul 2021 10:32:46 +0200 Subject: Re: Need query To: pgsql-admin@lists.postgresql.org References: From: Thomas Kellerer Message-ID: Date: Sat, 17 Jul 2021 10:32:45 +0200 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.21) Gecko/20090302 Thunderbird/2.0.0.21 Mnenhy/0.7.5.666 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: de-DE Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:4OMdmgh/gwcxndGQQVo3rtThxpc/TLnc17VvENFfmWe3aFom9ur Fg3hkX5eImeNBH4hurWcTRKurr4/rmVxftjI8s5FwuI3edB1aK+B/qY7RFzF9uvAkwQzzB6 RhSHB9DSYgfRfGHnbdjSxLnnX2kAVOLEH++E4oObG+Xn7LqvMc3ylt44KnqG7qDMhqLmOu0 AAEEwuRqJavmuuppFbGTg== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:EKbIrAk5DJU=:UOdIbONKUTdNj77p3F7tsm 7UfbWrlj8XOBlptpembsobodHxL5V7XNChF3DJqgSY1APc0Iye3Pk06k2lUTN508xHPWKYIBc AZDjGg3sbQkCpbNhOghmIm3MecjSvEkLv0E0QKIXDXwwYg0SXO1ZSZv+cDvpwSQCFRWs0TMe3 lf7BwE780QHviSXa/BcRqY8/t3T9u4yebniOCLQcEfPRieSKjGX/cAkzREJy3br9UUnje/Hxr T9VkXztlr9JUs1QdcopeS90zNlMSC75MaWkjIO1z3osmLHIRTKH6Dj53191D/t1jB61f7SyEl no/CpPPI1mLJ9n8vJWhsHRFaotI78uGpI2ft7U9Xklr2EM0CI/IkMKS+WwzOIM8GWDb1JZLQ1 kOd7Hx7kxSDKbpHMVZ0id0D/bscYn70T54CCV/OoheSnvL1LS6Ym4AKN3iRv1iDyQwW9vbTqf T2l6u5SemkUVxfDUFfwUgBXP3fT5CLI3HpEcMG5ihGKXJop/AuZ/QQOQR9jvq4Kf9a9QCoJtz TSP6xvaN9Sd6MlHZP9gBKAftp5wjLUfLj7mdBYawSoXE1aBPGfv1ZcwTwaYXt323PYwd0FtLg d6NtWbOVsREFCypTVN5iJBPCqoF1MZ11TMSMlSWev1G4+ZE5k7t/MCy87GlYiy6E+gehmIpbD 5vkJdTamfiiQ4VOwm+mE4x84Un12tyJTXMguNOO6F8ycJyaTWb9uiIydKrvqmrXrNN+0VF5nl C/JaYIBaD4nz3w2SITRng848Xws/ccBhOwk+p6VBZoLSigLuQ5NjbbUh8en0vT4uUyrtBmQFb jkpe90bbjJ8y5Y2lFRlcW6VnFtZtj0R16XGcF4MfRs8R2w7BBntBKSKhQ4DXeo8icBLuucCZr O7FUfelH45mlX2ZDKxaADQnsqGg99++blNjwq965RtPSK7DVZf6qbWaB5K7SU39j+07A+HS6K kp1T2rysq3WOtJBYXucxOBoJXiqbq7sEnGTJ0S6961XhnqRKHds7ZnXUSvMnNWJ3G9EPolZEv 22GVJRBXpnYpTOv+b2DMAnMq+eo63W9j5jWytzp9bBix/kT5lAkhmNZLwY3Sq7ClhEOLeWw+U /hQavpu0ZJqYVq4WD4YDTn2f/uD6Ua2r1hm List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Firthouse banu schrieb am 17.07.2021 um 09:24: > Table1 > Name =C2=A0 =C2=A0 =C2=A0Fruit > A =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Mango > A =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Apple > A =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Grape > B. =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Mango > B. =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Mango > A. =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Mango > A. =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Apple > > Output > Name. =C2=A0 Mango =C2=A0 Apple =C2=A0 Grape > A. =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 2. =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A02. =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A01 > B. =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 2. =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 0. =C2=A0 =C2=A0 =C2=A0 =C2=A0 0 > > Can anyone write query to get this desired output from table one in Post= gres please. In my opinion, filtered aggregation is the most flexible way to do this ki= nd of thing select name, count(*) filter (where fruit =3D 'Mango') as mango, count(*) filter (where fruit =3D 'Apple') as apple, count(*) filter (where fruit =3D 'Grape') as grape from the_table group by name order by name; And before you ask: it's not really possible to make this dynamic, so that= the number of columns "automagically" increases when you have more fruits. One fundam= ental restriction of the SQL language is that the number and types of all column= s must be known to the database when the query is parsed. It can't change the columns as a result of the query itself.