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 easi开发者_运维百科ly 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[1] // col field of first record
qry.col[2] // col field of second record
...
or
qry["col"][1] // col field of first record
qry["col"][2] // 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']) />
vs.
<cfset QueryColumn = SummaryQuery[subsectionName & 'Type'] />
<cfset TypeList = ValueList(QueryColumn) />
精彩评论