[2 days left] What’s wrong with your cloud strategy? Learn why multicloud solutions matter with Nimble Storage.Register Now

x
?
Solved

LISTAGG question

Posted on 2013-01-17
6
Medium Priority
?
701 Views
Last Modified: 2013-01-22
I have a complex and sucessful query that that uses LISTAGG to show codes associated to a parent list.

My question is: can I use LISTAGG to produce and output a column with a specific number of delimiters.  I need to import this file into Excel for further processing, but the LISTAGG column needs 39 delimiters to process into 40 columns when imported into Excel regardless of the number of results.
0
Comment
Question by:rlinnabery
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
6 Comments
 
LVL 77

Expert Comment

by:slightwv (䄆 Netminder)
ID: 38790133
I'm not following what you are asking.

Are you asking how to produce a CSV with 40 columns no matter how many columns you have?

Are you wanting certain values in specific positions?

Can you post some sample data and expected results?
0
 
LVL 74

Accepted Solution

by:
sdstuber earned 2000 total points
ID: 38790247
LISTAGG can't do that, but you can nest the query and use RPAD to create additional delimiters


SELECT owner, table_names || RPAD(',', 40 - cnt, ',')
  FROM (SELECT owner,
               COUNT(*) cnt,
               LISTAGG(table_name, ',') WITHIN GROUP (ORDER BY table_name) table_names
          FROM all_tables
         WHERE owner IN ('SCOTT', 'HR', 'OE', 'PM', 'SH')
        GROUP BY owner
        ORDER BY owner);
0
 

Author Closing Comment

by:rlinnabery
ID: 38793596
Thanks you, sdstuber.  I think this will accomplish exactly what I needed.
0
Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

 
LVL 77

Expert Comment

by:slightwv (䄆 Netminder)
ID: 38793637
Mind if I ask why you needed trailing commas to load into Excel?

Excel should easily handle:
a,b,c
a

and not need:
a,b,c
a,,
0
 

Author Comment

by:rlinnabery
ID: 38799621
I am loading into a template that has twelve sections of up to 40 codes plus some other settings for the section.  I may have 1 or I may have 40 codes.  But I need them to take up the 40 cells when parsed into Excel so the next section starts in the proper cell for later input into a vba script after I make changes.  I used the listagg to minimize the columns in the query as it would be around 800 columns otherwise.  Hope that makes sense.
0
 
LVL 77

Expert Comment

by:slightwv (䄆 Netminder)
ID: 38805491
Thanks for the post back.

I've never used templates.  Guess I can add that to my to-do list.
0

Featured Post

Veeam Task Manager for Hyper-V

Task Manager for Hyper-V provides critical information that allows you to monitor Hyper-V performance by displaying real-time views of CPU and memory at the individual VM-level, so you can quickly identify which VMs are using host resources.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Why doesn't the Oracle optimizer use my index? Querying too much data Most Oracle developers know that an index is useful when you can use it to restrict your result set to a small number of the total rows in a table. So, the obvious side…
Working with Network Access Control Lists in Oracle 11g (part 2) Part 1: http://www.e-e.com/A_8429.html Previously, I introduced the basics of network ACL's including how to create, delete and modify entries to allow and deny access.  For many…
This video shows setup options and the basic steps and syntax for duplicating (cloning) a database from one instance to another. Examples are given for duplicating to the same machine and to different machines
This video explains what a user managed backup is and shows how to take one, providing a couple of simple example scripts.

649 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question