web-dev-qa-db-ja.com

ColdFusionでクエリ列をリストに変換する方法

ColdFusionクエリ列をリストに変換しようとしていますが、それを行うための最良の方法は何ですか?

クエリの列をリストに簡単に変換できる組み込み関数があると思ったのですが、それが何かある場合はどうでしょうか。

21
erikvold

それを行うための組み込み関数があります:ValueList

<cfset myList = ValueList(query.columnname)>

すべてのリスト関数と同様に、オプションの区切り文字属性があります。

<cfset myList = ValueList(query.columnname,"|")>

リスト内の値を二重引用符で囲む必要がある場合は、QuotedValueListを使用します。

<cfset myList = QuotedValueList(query.columnname)>
50
ale

クエリの列に配列として直接アクセスすることもできます。これは、実行しようとしていることに対して機能する場合は、変換する必要はありません。

qry.col[1] // col field of first record
qry.col[2] // col field of second record
...

または

qry["col"][1] // col field of first record
qry["col"][2] // col field of second record

CFクエリオブジェクトは、実際には列の連想配列です...奇妙ですが、場合によっては役立ちます。

3
bpanulla

このような場合はどうですか:

<cfset SummaryQuery = Evaluate('getReportData' & summaryName & 'Summary') />
<cfset TypeList = ArrayToList(SummaryQuery[subsectionName & 'Type']) />

vs.

<cfset QueryColumn = SummaryQuery[subsectionName & 'Type'] />
<cfset TypeList = ValueList(QueryColumn) />
0
Dave Babbitt