我开发使用ColdFusion并想知道循环大查询结果集的最佳策略是什么.使用cfloop和cfoutput之间有任何性能差异吗?如果没有,是否有理由更喜欢一个而不是另一个?
Stu*_*eld 12
我相信曾经有过.我认为已经解决了这个差异,最好的办法是为每个测试特定的用例进行测试.
<cfset t = GetTickCount()/>
<cf... query="qry">
<!--- Do something --->
</cf...>
<cfset dt = GetTickCount() - t/>
<cfdump var="#dt#"/>
<!---
If the differences are small you can use java.lang.System.nanoTime() instead
--->
Run Code Online (Sandbox Code Playgroud)
但是有一些值得注意的差异.cfoutput可以做分组循环,但cfloop不能.
<cfoutput query="qry" group="col">
<!--- Loops once for each group --->
<cfoutput>
<!--- Loops once for each record within the group --->
</cfoutput>
</cfoutput>
Run Code Online (Sandbox Code Playgroud)
对于cfoutput您可以指定startrow和maxrows(或数量)进行分页您的结果.因为cfloop您必须指定endrow索引而不是计数.
此外,您不能使用cfoutput嵌套在现有cfoutput标记中的查询,您需要先结束包含cfoutput.
| 归档时间: |
|
| 查看次数: |
7945 次 |
| 最近记录: |