Yeah, one of the limitations in SQL is that it's strongly-typed, which means that the type of each query (including row structure) has to be known before execution. Other database engines like PostgreSQL provide extensions written in a procedural language (I think C) that work around this by returning generic "row" types to emulate a pivot table, but I don't know that DB2 has this functionality or if it even would be available via the dsmadmc SQL interface.
Marc's answer with CASE will definitely work, though, if you the class names are known before the query, but we have a bunch of management classes and add new ones fairly regularly so the spreadsheet pivot table method would work better for us. On Fri, Mar 12, 2021 at 04:16:28PM +0000, Loon, Eric van (ITOP NS) - KLM wrote: > Hi Skylar, > > Your query returns multiple lines for the same node if a node uses multiple > classes: > > Node_name class_name amount > Nodename1 Class1 11231231 > Nodename1 Class2 31223 > > I'm looking for a way to have everything in one line, like: > > Node_name Class1 Class2 > Nodename1 11231231 31223 > > Thanks for your help! > > Kind regards, > Eric van Loon > Air France/KLM Storage & Backup > > -----Original Message----- > From: ADSM: Dist Stor Manager <ADSM-L@VM.MARIST.EDU> On Behalf Of Skylar > Thompson > Sent: vrijdag 12 maart 2021 16:49 > To: ADSM-L@VM.MARIST.EDU > Subject: Re: SQL statement for multiple classes > > Hi Eric, > > You can part of the way there with GROUP BY: > > SELECT node_name,class_name,COUNT(*) FROM archives GROUP BY > node_name,class_name > > This will give you one row per (node_name,class_name) tuple. In order to get > row values as columns, though, you need to do a pivot (aka crosstab), which > I'm not sure is possible in through the DB2 interface in dsmadmc. > If you run the query w/ "-dataonly=yes -tab" you can import into a > spreadsheet easily and do the pivot there, though. > > Hope that helps! > > On Fri, Mar 12, 2021 at 03:27:29PM +0000, Loon, Eric van (ITOP NS) - KLM > wrote: > > Hi everybody, > > > > I'm trying to figure out how to create a SQL query to retrieve the amount > > of files, per management class, per node in just one query. The ideal > > output would be: > > > > Nodename Class1 Class2 Class3 > > Mynode1 1234 475859 3645895 > > Mynode2 12345 274368746 8948382348 > > > > If you select a count(*) from archives where class_name='CLASS1' you will > > only get the amount stored for Class1, so I will have to be able to combine > > multiple select count(*) from archives where statements in one single query. > > Thank you very much for your help! > > > > Kind regards, > > Eric van Loon > > Air France/KLM Storage & Backup > > ******************************************************** > > For information, services and offers, please visit our web site: > > http://www.klm.com. This e-mail and any attachment may contain confidential > > and privileged material intended for the addressee only. If you are not the > > addressee, you are notified that no part of the e-mail or any attachment > > may be disclosed, copied or distributed, and that any other action related > > to this e-mail or attachment is strictly prohibited, and may be unlawful. > > If you have received this e-mail by error, please notify the sender > > immediately by return e-mail, and delete this message. > > > > Koninklijke Luchtvaart Maatschappij NV (KLM), its subsidiaries and/or its > > employees shall not be liable for the incorrect or incomplete transmission > > of this e-mail or any attachments, nor responsible for any delay in receipt. > > Koninklijke Luchtvaart Maatschappij N.V. (also known as KLM Royal > > Dutch Airlines) is registered in Amstelveen, The Netherlands, with > > registered number 33014286 > > ******************************************************** > > -- > -- Skylar Thompson (skyl...@u.washington.edu) > -- Genome Sciences Department (UW Medicine), System Administrator > -- Foege Building S046, (206)-685-7354 > -- Pronouns: He/Him/His > ******************************************************** > For information, services and offers, please visit our web site: > http://www.klm.com. This e-mail and any attachment may contain confidential > and privileged material intended for the addressee only. If you are not the > addressee, you are notified that no part of the e-mail or any attachment may > be disclosed, copied or distributed, and that any other action related to > this e-mail or attachment is strictly prohibited, and may be unlawful. If you > have received this e-mail by error, please notify the sender immediately by > return e-mail, and delete this message. > > Koninklijke Luchtvaart Maatschappij NV (KLM), its subsidiaries and/or its > employees shall not be liable for the incorrect or incomplete transmission of > this e-mail or any attachments, nor responsible for any delay in receipt. > Koninklijke Luchtvaart Maatschappij N.V. (also known as KLM Royal Dutch > Airlines) is registered in Amstelveen, The Netherlands, with registered > number 33014286 > ******************************************************** -- -- Skylar Thompson (skyl...@u.washington.edu) -- Genome Sciences Department (UW Medicine), System Administrator -- Foege Building S046, (206)-685-7354 -- Pronouns: He/Him/His