一个对于我来说很难的问题,郁闷了几天的,大哥大姐们帮帮忙吧!
问题如下:数据库中有表   num_table   表中有记录如下: 
 字段:       
 NID            N_Time                  N_Num 
 ----------------------------- 
 2007            10:10:00               a 
 2007            10:02:00               a 
 2007            10:01:00               a 
 2006            09:22:00               b 
 2006            09:20:00               b 
 2005            08:20:00               c 
 ------------------------------ 
 问题是想在也面中输出一个表格,想要得到的结果如下: 
 ┎───┯──────┯────┒ 
 │2007      │10:10:00  │    │ 
 ┖───────────    │ 
 │2007 │10:02:00  │ a               │就是把NID相同的N_Num的单元格合并 
 ┖───────────    │ 
 │2007 │10:02:00  │    │ 
 ┖───────────────┚ 
 │2006 │09:22:00  │    │ 
 ┖───────────      b               │ 
 │2006 │09:20:00  │    │ 
 ┖───────────────┚ 
 │2005 │08:20:00  │ c     │ 
 ┖───────────────┚   
 写这个表好久哦,不知道大家看明白了吗?就是把数据中NID相同的对应的N_Num的单元格合并,不管大家用什么方法,只要能实现上面的表格就好。小生在此谢过了!     
------解决方案--------------------set rs=conn.execute( "select NID,N_Time,N_Num,(select count(NID) from num_table where N_Num=a.N_Num group by N_Num) as N_Count from num_table as a order by N_Num ") 
 NowNum= " " 
 do while not rs.eof 
  response.write  " <tr>  <Td> NID </td>  <td> N_Time </td>  " 
  if NowNum <> rs( "N_Num ") then 
    NowNum=rs( "N_Num ") 
    response.write  " <td rowspan= "&rs( "N_Count ")& "> N_Num </td>  " 
  end if 
  response.write  " </tr>  " 
  rs.movenext 
 loop
------解决方案-------------------- <% 
 set conn=server.CreateObject( "adodb.connection ") 
 str= "driver={microsoft access driver (*.mdb)};dbq= " & server.MapPath( "示例.mdb ") 
 conn.open str 
 sql= "select N_NUM,count(*) as num from demo group by N_NUM order by N_NUM " 
 set rs=conn.execute(sql) 
 dim n(),num() 
 i=0 
 do while not rs.eof 
     redim preserve n(i)     '用于统计有多少个相同的N_NUM 
     redim preserve num(i)   '同时记下N_NUM的内容 
     n(i)=rs( "num ") 
     num(i)=rs( "N_NUM ") 
     i=i+1 
     rs.movenext 
 loop 
 sql= "select * from demo order by N_NUM " 
 set rs=conn.execute(sql) 
 response.write  " <table border=1>  " 
 i=0:j=0 
 do while not rs.eof 
     response.Write( " <tr>  ") 
     response.Write  " <td>  " & rs( "NID ") & " </td>  " 
     response.Write  " <td>  " & rs( "N_TIME ") & " </td>  " 
     if j=0 then response.Write  " <td rowspan= " & n(i) &  ">  " & num(i) & " </td>  " 
     if rs( "N_NUM ") <> num(i) then 
         i=i+1 
         response.Write  " <td rowspan= " & n(i) &  ">  " & num(i) & " </td>  " 
     end if 
     rs.movenext 
     j=j+1 
     response.Write( " </tr>  ") 
 loop 
 response.Write( " </table>  ") 
 set conn=nothing 
 %&g