[英]Coldfusion getting data from a second datasource
我有一个查询从第二个数据源获取数据。 这很慢。 有没有更有效的方法来做到这一点?
我认为缓慢的部分是ListQualify。 它产生一个包含40,000个值的列表。 但是我不确定另一种方法。
<cfif GetExtractionData.recordcount gt 0 >
<cfquery name="queryVPOCar" datasource="Web_Applications">
Select [strStockNumber] as "STOCK",
field1 as "field_1",
field2 as "field_2",
field3 as "field_3",
field4 as "field_4",
field5 as "field_5",
field6 as "field_6"
From ExtractionAggregates
WHERE [strStockNumber] IN (#ListQualify(StockList,"'",",","ALL")# )
</cfquery>
<!--- Select an empty Row --->
<cfquery name="joinQuery" dbtype="query" >
SELECT *
FROM queryVPOCar
WHERE queryVPOCar.STOCK = ''
</cfquery>
<!--- Add empty row to table, so we have column names --->
<cfset QueryAddRow(joinQuery) />
<!--- if results exist, add them to the query --->
<cfif queryVPOCar.recordcount gt 1 >
<cfquery name="GetExtractionData" dbtype="query">
SELECT * FROM
GetExtractionData, queryVPOCar
WHERE GetExtractionData.STOCK = queryVPOCar.STOCK
UNION
SELECT GetExtractionData.*, joinQuery.*
FROM GetExtractionData, joinQuery
WHERE GetExtractionData.STOCK NOT IN (#ListQualify(ValueList(queryVPOCar.STOCK),"'",",","ALL")# )
ORDER BY STOCK
</cfquery>
</cfif>
</cfif>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.