asp记录集如何将重复的数据合并

例如:数据库查询到的读出来的数据<tr><td>单据</td><td>产品</td></tr><tr><td>1</td><td>A1</td></tr><tr><td>... 例如:数据库查询到的读出来的数据
<tr><td>单据</td><td>产品</td></tr>
<tr><td>1</td><td>A1</td></tr>
<tr><td>2</td><td>A1</td></tr>
<tr><td>2</td><td>A1</td></tr>
<tr><td>3</td><td>A1</td></tr>
<tr><td>4</td><td>A1</td></tr>
<tr><td>4</td><td>A1</td></tr>

我想得到的数据
<table width="100" border="0" cellspacing="1" cellpadding="0">
<tr>
<td>单据</td>
<td>产品</td>
</tr>
<tr>
<td>1</td>
<td>A1</td>
</tr>
<tr>
<td rowspan="2">2</td>
<td>A1</td>
</tr>
<tr>
<td>A1</td>
</tr>
<tr>
<td>3</td>
<td>A1</td>
</tr>
<tr>
<td rowspan="2">4</td>
<td>A1</td>
</tr>
<tr>
<td>A1</td>
</tr>

</table>
展开
 我来答
zmspu1
推荐于2016-01-30 · TA获得超过289个赞
知道小有建树答主
回答量:1425
采纳率:100%
帮助的人:966万
展开全部
这个问题问的好,我试着写了下,没想到还挺绕脑子的
首先,你需要使用group by 或者 order by 把记录按你要判断重复的字段排序,这样便于后面的程序使用。
sql="select * from 表 where 条件 order by 重复字段"
rs.open sql,conn,1,1
rs.movefirst
t=1
mv=rs("重复字段") '这里先取一下第一个记录的值作备用
j=0
ms="<table border=1>"
ms1=""
rs.movefirst
do while not rs.eof
if rs("重复字段")=mv then
t=t+1
ms1=ms1 & "<tr><td>"&rs("其他字段")&"</td></tr>"
else
ms=ms & "<tr><td rowspan='"&t&"'>"&mv&"</td><td>"&mv1&"</td></tr>"
if ms1<>"" then
ms=ms & ms1
end if
mv=rs("重复字段")
mv1=rs("其他字段")
t=1
ms1=""
end if
rs.movenext
loop
ms=ms & "</table>"
response.write ms

以上在本地调试通过,显示正确。如果遇到其他特殊的显示不正确的,请试着自行修改下即可。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式