使用asp循环访问SQL记录
问题描述:
我需要显示一个XML输出,该输出基于传递一个记录编号进行搜索的请求输出多个行项目。使用asp循环访问SQL记录
例如,请求传递记录号“ABC123”来搜索。
响应查找被记录编号记录并返回一些领域:
<RecordNo>ABC123</ReocrdNo>
<LineNo>1</LineNo>
<Item>Good record</Item>
<Quantity>1</Quantity>
<Price>5.00</Price>
然而,一个记录可以有多个行项目,所以像
<RecordNo>ABC123</ReocrdNo>
<LineNo>1</LineNo>
<Item>Good record</Item>
<Quantity>1</Quantity>
<Price>5.00</Price>
<RecordNo>ABC123</ReocrdNo>
<LineNo>2</LineNo>
<Item>Best record</Item>
<Quantity>1</Quantity>
<Price>6.00</Price>
表结构基本上有一个带有记录号的主表,然后连接到该主记录的详细表中的多个详细记录。我知道我需要使用某种循环。
Set nodeTierRecordNum = CreateNode(nodeTierLine, "Quantity", "")
nodeTierRecordNum.text = cmdGetRecord.Parameters("@quantity").Value
而且SQL一边:XML输出是由ASP页面上完成
SET @quantity = (SELECT qty FROM record_details WHERE record_id = @record_id_passed_in)
但是,这将返回多个值,因为有多个记录(行),此记录。
qty
1
1
我该如何达到目标?
答
必需组由按规定:
SET @quantity = (SELECT sum(qty) FROM record_details WHERE record_id = @record_id_passed_in
group by Item)
而另一个是XML输出:
SELECT record_id, sum(qty) as qty FROM record_details
WHERE record_id = @record_id_passed_in
group by record_id
for XML auto