That's an interesting idea. I added a trim like the following, but, it does appear to order by the tree depth I was hoping for. Thank you for the idea.
order by connect_by_root(BPROD)
,sys_connect_by_path(trim(char(BSEQ)),'')
-----Original Message-----
From: MIDRANGE-L <midrange-l-bounces@xxxxxxxxxxxxxxxxxx> On Behalf Of Hiebert, Chris
Sent: Friday, July 1, 2022 11:50 AM
To: Midrange Systems Technical Discussion <midrange-l@xxxxxxxxxxxxxxxxxx>
Subject: RE: Hierarchal queries and order by siblings
CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
I suggest using SYS_CONNECT_BY_PATH to build a string that contains the desired sort.
order by connect_by_root(BPROD)
, SYS_CONNECT_BY_PATH( cast( BSEQ as Char(20)),':' )
Chris Hiebert
Senior Programmer/Analyst
Disclaimer: Any views or opinions presented are solely those of the author and do not necessarily represent those of the company.
From: MIDRANGE-L <midrange-l-bounces@xxxxxxxxxxxxxxxxxx> On Behalf Of Darren Strong
Sent: Tuesday, June 28, 2022 1:55 PM
To: midrange-l General Questions (midrange-l@xxxxxxxxxxxxxxxxxx) <midrange-l@xxxxxxxxxxxxxxxxxx>
Subject: Hierarchal queries and order by siblings
I'd like to do something like the following, where I can sort by the parent, but then within the parent, sort the siblings, but, this violates SQL syntax. I can choose to sort on one or the other, but not both. Is there a way to do this, or should I use the CTE method when selecting multiple parents?
select
connect_by_root(BPROD) as TOPPARENT,
level as CurLVL,
bchld as Child
from MBM
start with BPROD in (select PROD from PARTLIST)
connect by nocycle prior BCHLD=BPROD
order by connect_by_root(BPROD), siblings by BSEQ
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit:
https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/midrange-l.
Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related questions.
Help support midrange.com by shopping at amazon.com with our affiliate link:
https://amazon.midrange.com
As an Amazon Associate we earn from qualifying purchases.