在循环

时间:2017-06-13 15:49:25

标签: vbscript asp-classic

我有一个选择导致这个数据:

Paul    2
Paul    5
Mary    7
Jody    8
Carlos  9
Carlos  0

我正在尝试在一个表格中输出相同名称的每个组,例如:

表1:

Paul    2
Paul    5

表2:

Mary    7

表3:

Jody    8

表4:

Carlos  9
Carlos  0

但我只知道如何在一个表中执行它(输出将类似于选择结果。我使用的代码是:

<%
Set MasterData= TaskConnection.Execute("SELECT * FROM TABLE1")
If Not MasterData.EOF Then
%>
<table>
    <thead>
        <tr>
            <th>NAME</th>
            <th>AMOUNT</th>
        </tr>
    </thead>
    <%
        While Not MasterData.EOF
        Name= MasterData("Name")
        Amount= MasterData("Amount")
    %>
    <tr>
        <td><% Response.Write Name%></td>
        <td><% Response.Write Amount%></td>
    </tr>
    <%
        MasterData.MOVENEXT
        Wend
    %>
</table>
<%
End if
%>

如何在新的名称循环中生成新表格的任何帮助都会很棒。感谢。

1 个答案:

答案 0 :(得分:1)

尝试以下内容:

<%
Set MasterData= TaskConnection.Execute("SELECT * FROM TABLE1")
If Not MasterData.EOF Then
%>
<table>
    <thead>
        <tr>
        <th>NAME</th>
        <th>AMOUNT</th>
    </tr>
</thead>
<%  prevName = ""
    While Not MasterData.EOF
        Name= MasterData("Name")
        Amount= MasterData("Amount")
        if prevName <> Name and prevName <> "" then
%>
          </table>
          <table>
            <thead>
               <tr>
                   <th>NAME</th>
                   <th>AMOUNT</th>
               </tr>
            </thead>
<%      end if
        prevName = Name
%>
    <tr>
        <td><% Response.Write Name%></td>
        <td><% Response.Write Amount%></td>
    </tr>
    <%
        masterData.MOVENEXT
    Wend
%>
</table>
<%
End if
%>