Loops 如何计算产品价格表的总和(ColdFusion)
以下是查询:Loops 如何计算产品价格表的总和(ColdFusion),loops,coldfusion,Loops,Coldfusion,以下是查询: <cfquery name="GET_SHIP_ROW" datasource="#DSN2#"> SELECT SR.*, S.STOCK_CODE FROM SHIP_ROW SR, #dsn3_alias#.STOCKS S WHERE SR.STOCK_ID = S.STOCK_ID AND SR.SHIP_ID = #attributes.
<cfquery name="GET_SHIP_ROW" datasource="#DSN2#">
SELECT
SR.*,
S.STOCK_CODE
FROM
SHIP_ROW SR,
#dsn3_alias#.STOCKS S
WHERE
SR.STOCK_ID = S.STOCK_ID AND
SR.SHIP_ID = #attributes.ship_id#
ORDER BY
SR.SHIP_ROW_ID
</cfquery>
例如,我有一个价格循环代码:
<cfloop from="#satir_start#" to="#satir_end#" index="i">
<cfif i lte get_ship_row.recordcount>
<cfscript>
if(len(get_ship_row.discount[i]))indirim = get_ship_row.discount[i]; else indirim = 0;
adim_1 = get_ship_row.amount[i] * get_ship_row.price[i];
adim_2 = (adim_1/100)*(100-indirim);
adim_3 = adim_2*(get_ship_row.tax[i]/100);
adim_4 = adim_2+adim_3;
</cfscript>
<cfquery name="GET_BARCODE" datasource="#DSN3#">
SELECT
BARCOD
FROM
PRODUCT
WHERE
PRODUCT_ID = #get_ship_row.product_id[i]#
</cfquery>
<table>
<tr>
<td style="width:30mm;"><cfoutput>#get_ship_row.stock_code[i]#</cfoutput></td>
<td style="width:50mm;"><cfoutput>#left(get_ship_row.name_product[i],53)#</cfoutput></td>
<td style="width:25mm;" align="right"><cfoutput>#get_ship_row.amount[i]# #get_ship_row.unit[i]#</cfoutput></td>
<td style="width:25mm;" align="right"><cfoutput>#TLFormat(get_ship_row.price[i])#</cfoutput> TL</td>
<td style="width:35mm;" align="right"><cfoutput>#TLFormat(get_ship_row.amount[i] * get_ship_row.price[i])#</cfoutput> TL</td>
</tr>
</table>
</cfif>
</cfloop>
这里展示了一个名称和价格的列表,我只想计算它们的价格总和,我指的是所有产品的价格。我该怎么做?谢谢你的帮助 我只是根据您假定的数据库结构进行猜测。我建议将计算完全转移到查询中,这样db服务器就可以做它最擅长的工作。在CF中操纵这样的东西并不是最理想的 您必须对此进行测试,但我认为距离开始测试已经足够近了:
<cfquery name="GET_SHIP_ROW" datasource="#DSN2#">
SELECT
SR.*,
S.STOCK_CODE,
( (sr.amount*sr.price) * ( (100-discount)/100 ) * ( tax/100 ) ) as itemCost
FROM
SHIP_ROW SR,
#dsn3_alias#.STOCKS S
WHERE
SR.STOCK_ID = S.STOCK_ID AND
SR.SHIP_ID = #attributes.ship_id#
ORDER BY
SR.SHIP_ROW_ID
</cfquery>
记录集中有行项目总数后,运行查询查询以获取所有行项目的总和非常简单:
<cfquery name="total" dbtype="query">
select sum(itemCost) as shipmentTotal from GET_SHIP_ROW
</cfquery>
这有用吗?我只是根据您假定的数据库结构进行猜测。我建议将计算完全转移到查询中,这样db服务器就可以做它最擅长的工作。在CF中操纵这样的东西并不是最理想的 您必须对此进行测试,但我认为距离开始测试已经足够近了:
<cfquery name="GET_SHIP_ROW" datasource="#DSN2#">
SELECT
SR.*,
S.STOCK_CODE,
( (sr.amount*sr.price) * ( (100-discount)/100 ) * ( tax/100 ) ) as itemCost
FROM
SHIP_ROW SR,
#dsn3_alias#.STOCKS S
WHERE
SR.STOCK_ID = S.STOCK_ID AND
SR.SHIP_ID = #attributes.ship_id#
ORDER BY
SR.SHIP_ROW_ID
</cfquery>
记录集中有行项目总数后,运行查询查询以获取所有行项目的总和非常简单:
<cfquery name="total" dbtype="query">
select sum(itemCost) as shipmentTotal from GET_SHIP_ROW
</cfquery>
这有帮助吗?如何在代码中插入它?这样地?TLFormatget\u ship\u row.shipmentTotal或类似的TLFormattotal.ShipmentTotal2Scritler它没有帮助,你修改的查询会使页面崩溃,但我得到了逻辑,我希望剩下的一定更简单:我确实说过你必须测试它-我猜测你的数据库结构和数据,所以从一开始就没有100%的可能性。坚持下去……你会得到你需要的。这就是标记派上用场的地方。如何在代码中插入它?这样地?TLFormatget\u ship\u row.shipmentTotal或类似的TLFormattotal.ShipmentTotal2Scritler它没有帮助,你修改的查询会使页面崩溃,但我得到了逻辑,我希望剩下的一定更简单:我确实说过你必须测试它-我猜测你的数据库结构和数据,所以从一开始就没有100%的可能性。坚持下去……你会得到你需要的。这就是标签派上用场的地方。