<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