<cfquery name="dbtree">
        select ID, NAME, PARENT_ID, Max(ID) as MAXID
        from wherever
</cfquery>
<cfset tree = ArrayNew(1)>
<cfset ArraySet(tree, 1, dbtree.MAXID, "")>
<cfloop query="dbtree">
        tree[dbtree.ID] = StructNew();
        tree[dbtree.ID].ID = dbtree.ID;
        tree[dbtree.ID].NAME = dbtree.NAME;
        tree[dbtree.ID].PARENT = dbtree.PARENT_ID;
</cfloop>
<cfloop index="itr" from="1" to="#dbtree.RecordCount#">
        <cfif IsStruct(tree[itr])>
                tree[itr].PARENT = tree[tree[itr].PARENT];
        </cfif>
</cfloop>
<cfdump var="#tree#">

Matt Liotta
President & CEO
Montara Software, Inc.
http://www.montarasoftware.com/
V: 415-577-8070
F: 415-341-8906
P: [EMAIL PROTECTED]

> -----Original Message-----
> From: chris.alvarado [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, July 16, 2002 8:37 AM
> To: CF-Talk
> Subject: Recursive queries
> 
> Still trying to decide how I like to perform some type of recursive
> query wth the following Table structure;
> 
> ID   NAME   PARENT_ID
> 
> If the current record IS the parent then the Parent ID is 0
> 
> Otherwise the child has the ID of the parent as it's Parent ID.
> 
> 
> Anyone have any good references on recursive queries to handle this? A
> way to spider down through the parents and children basically.
> 
> Ive done this before using Stored Procs and temp tables, but there has
> to be an easier way.
> 
> Any suggestions?
> 
> 
> -chris.alvarado
> [ application developer ]
> 4 Guys Interactive, Inc.
> http://www.4guys.com
> 
> -- I can picture in my mind a world without war, a world without hate.
> And I can picture us attacking that world, because they'd never expect
> it. -- Jack Handy
> 
> 
> 
______________________________________________________________________
This list and all House of Fusion resources hosted by CFHosting.com. The place for 
dependable ColdFusion Hosting.
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists

Reply via email to