How to convert Query column to a list in ColdFusion
I'm trying to convert ColdFusion query column to a list, what is the best way to do so?
I thought that there is a built in function that allows one to easily convert a query's column in to a list, if there is what is it?
There is a built-in function to do that: ValueList
<cfset myList = ValueList(query.columnname)>
As with all of the list functions, there's an optional delimiter attribute.
<cfset myList = ValueList(query.columnname,"|")>
If you need the values in the list to have double-quotes around them, use QuotedValueList.
<cfset myList = QuotedValueList(query.columnname)>
You can also access a query's columns as arrays directly without any conversion if that works for what you're trying to do:
qry.col // col field of first record qry.col // col field of second record ...
qry["col"] // col field of first record qry["col"] // col field of second record
A CF query object is really an associative array of columns... weird but occasionally useful.
How about in a case like this:
<cfset SummaryQuery = Evaluate('getReportData' & summaryName & 'Summary') /> <cfset TypeList = ArrayToList(SummaryQuery[subsectionName & 'Type']) />
<cfset QueryColumn = SummaryQuery[subsectionName & 'Type'] /> <cfset TypeList = ValueList(QueryColumn) />