我有一些代码正在努力提高效率。
我正在运行一个查询,然后遍历这些结果并运行其他查询以进一步深入了解我的数据。代码需要很长时间来处理,我确信它没有尽可能高效,我相信对查询进行查询会更有效,但我不确定如何准确地实现它。
这是我当前的代码
我的第一个查询:
<!--- Get equipment Query --->
<cfquery name="get_equipment" datasource="#datasource#">
select *
from equipment_maintenance
where machine_type != 'unifi_site' AND machine_type != 'firewall' AND machine_type != 'dvr' AND machine_type != 'pbx' AND active = 'yes'
ORDER by #querySortType#
</cfquery>
然后我输出我的查询并运行其他查询:
<cfoutput query="get_equipment">
<!--- Get In-Progress Maintenance History --->
<cfquery name="get_in_progress_history" datasource="#datasource#">
select *
from service_ticket
where equipment_id=#id#
</cfquery>
OUTPUT SOME DATA
<!--- Update due date in the database for this machine --->
<cfquery name="dueDate#id#" datasource="#datasource#">
update equipment_maintenance
set maintenance_due_date = #dueDate#
where id = #id#
</cfquery>
OUTPUT SOME DATA
<cfquery name="get_history" datasource="#datasource#">
select *
from equipment_service_history
where equipment_id = #id#
</cfquery>
<cfquery name="get_history_ticket_detail" datasource="#datasource#">
select *
from closed_tickets
where equipment_id = #id#
order by ticket_id DESC
</cfquery>
OUTPUT SOME DATA
<cfloop query="get_history_ticket_detail">
OUTPUT SOME DATA
</cfloop>
</cfoutput>
中间有很多 HTML 代码用于输出我的数据,但这是我的 Coldfusion 代码的基本结构。
我假设我的 CFOUTPUT 标记中的多个查询是导致性能问题正确的原因?如何使用 QoQ 解决这个问题?
-布赖恩