嵌套循环查询

时间:2014-04-25 14:12:30

标签: coldfusion

我有一个查询,提供像

这样的结果
Col1ID      Col2    Col3    Col4
1           cfml    34      56.5
3           Java    34      56.5
8           Jquery  36      57.7
34          .Net    34      52.2
63           php    34      56.5
7           extjs   36      57.7

现在的问题是Col3& Col4值在多行中相同,col4值需要更改,比如说它是+1。我转换Col3& Col4到数组然后比较?或者我是否将查询和嵌套循环内部循环到同一查询中。或任何其他替代..

修改

我需要比较col3&的配对值。 col4,包含下一行或前一行。

2 个答案:

答案 0 :(得分:0)

您可以保留这些值的数组并检查它是否已显示。如果有,则添加1并将新值添加到数组

<cfset col3Values = []>
<cfoutput query="myQuery">
  <cfif arrayFind(col3Values, myQuery.col3)>
    <cfset displayValue = myQuery.col3 + 1>
  <cfelse>
    <cfset displayValue = myQuery.col3>
  </cfif>
  #displayValue#
  <cfset arrayAppend(col3Values, displayValue)>
</cfoutput>

答案 1 :(得分:-1)

你只需要一个循环。您只需要事先初始化变量。

<cfset col4Value = "nothing, and this will work because ColdFusion is not 
strongly typed">
<cfset col3Value = col4Value>

<cfloop query = "yourquery">
<cfif col3 is not col3value>
code 
</cfif>
same thing for col4
<cfset col3Value = yourquery['col3'][currentrow]>
<cfset col4Value = yourquery['col4'][currentrow]>
</cfloop>