【发布时间】:2014-12-20 06:27:55
【问题描述】:
我能够在 1 小时的时间跨度内获得查询 - 以 15 分钟为增量...
我只是想在主键相同时停止显示重复的结果。
ie:如果某件事从早上 6:45 开始 - 并在早上 8:00 结束 - 如果主键(masterid)相同,我只希望它跨越 DIV 一次。然后,如果早上 8 点有其他事情,使用不同的主键 - 跨越该 div 时间框架等......
我正在考虑使用 cfloop 之类的 - 检查 mastered 是否相同或不同/
关于如何做到这一点的想法......
查询代码工作正常 - 我的显示代码也是如此...包含图片以了解我正在尝试做什么。
<cfloop index="incr" from="0" to="#loopreps#">
<cfoutput>
Loopreps is thru the time spans of 15 mins...
<cfquery name="scht" datasource="#ds#">
Proper Query
</cfquery>
<cfif scht.recordcount is not 0>
<cfset mid = #scht.masterid#>
This is where I am lost to hold it to only 1 result when spanning time
Proper Display Across Div Height Span once if MasterID is same
</cfif>
</cfoutput>
</cfloop>
【问题讨论】:
-
您使用 CF 执行任务的任何特殊原因?你没有说你正在使用哪个 dbms,但是像 SQL Server 这样的数据库使这种任务变得容易得多。无需在循环中查询。
-
网站全部内置于 ColdFusion - 数据库集成使用 Access
-
作为不是为多线程 Web 应用程序设计的桌面数据库,Access 确实限制了您的选择。如果可能,请升级到 SQL Server。它更加灵活,并且快速版本是免费的。话虽如此,您仍然可以通过一个包含时间的辅助表来简化它,以 15 分钟为增量。只需在开始/结束时间将您的其他表加入其中。生成的查询将包含您需要的所有间隔。然后根据需要格式化查询输出。 (编辑)在 CTE 单独出现之前,我在 SQL Server 中使用过类似的方法。
标签: coldfusion coldfusion-9 cfml