2015-09-05 67 views
3

你好我有查询数组值ColdFusion的查询循环下一个值

  • cat_1 ABC
  • cat_1 BBB
  • cat_1 CCC
  • cat_2 ABC
  • cat_2 OOO
  • cat_3 PPO

now I有以下列方式显示这些阵列

cat_1

  • ABC
  • BBB
  • CCC

cat_2

  • ABC
  • OOO

cat_3

  • PPO

我一直在使用与关联表,以获得从类别和项目表,但是当我将其输出到我的观点加入数据。我不知道如何获得查询循环中下一行的值。

<cfloop query="checklist"> 
#checklist.categoriesname# #checklist.name# 
</cfloop> 

上面是我目前的循环,我想获取一次categoriesname,如果是最后一次没有输出它。

+4

(编辑)你有没有看过使用分组cfoutput而不是cfloop?即''。它完全符合你的需求。参见[此示例](http://stackoverflow.com/questions/5170553/getting-all-sub-records-in-a-one-to-many-relationship/5170598#5170598)。但是,要回答问题,可以使用数组表示法访问任何查询行,即'queryName.columnName [RowNumber]'。尽管在这种情况下分组输出更简单。 – Leigh

+0

谢谢你的帮助。 http://www.bennadel.com/blog/2359-coldfusion-10---using-the-group-attribute-with-cfloop-to-group-query-rows.htm这个环节也很有 –

+0

对不起,我不小心标记你的意见,不知道如何撤消 –

回答

3

如上所示,代码为我解决了这个问题。

<cfloop query="checklist" group="categoriesname"> 
#checklist.categoriesname# 
<cfloop> 
#checklist.name# 
</cfloop> 
</cfloop> 
+0

#checklist.categoriesname#和#checklist.name#需要标签,实际显示的值。 –

+0

一个用于那些不熟悉[“基团”的特征](https://wikidocs.adobe.com/wiki/display/coldfusionen/cfloop%3A+looping+over+a+query),以便为它重要的注意事项正常工作,基础查询结果*必须*由分组列排序。从文档中,组特征:*“...在数据排序时消除相邻的重复行如果您检索了一个或多个查询列上排序的记录集,例如,如果记录集是在”Customer_ID“上排序的,可以将输出分组在“Customer_ID”上。* – Leigh