2017-09-02 82 views
0

我想在ColdFusion或字典中使用2維數組。ColdFusion中的2維數組

我從數據庫讀取:

<cfquery name="getData" datasource="myDB"> 
    Select Name, Score From Customer 
</cfquery> 

我在此查詢循環。我的查詢將返回6條是這樣的:

Test1, 3 
Test2, 0 
Test1, 1 
Test3, 1 
Test3, 3 
Test2, 0 

我想有一個數組/詞典在名稱將不會重複分數將被添加此數據。在這種情況下,三個二維陣列:

myArray(Test1, 4) 
myArray(Test2, 0) 
myArray(Test3, 4) 

在ColdFusion中可能嗎?

感謝

回答

2

如果沒有特別的理由使用數組,你也可以使用Struct。

這將如下所示:

<cfset myStruct = {} > 
<cfloop query="getData"> 
    <cfif NOT StructKeyExists(myStruct,Name)> 
    <cfset myStruct[Name] = [] > 
    </cfif> 
    <cfset ArrayAppend(myStruct[Name],score) > 
</cfloop> 
+0

似乎比必要的更復雜。 –

2

你總是可以查詢更改爲:

select name, sum(score) totalScore 
from customer 
group by name 

或者,如果你真正需要的個人記錄,你可以做查詢的查詢。

+0

感謝。實際上,有時我必須從文本文件而不是查詢中讀取數據。 – user6824563