现有两个表table1好table2
table1
name age  sex  address
1    23   1    qw
2    23   2    qw
3    34   2    qw
4    56   1     qw
5    56   1    qw
table2
name class school 
1    2      re
1    2      123
1    2       123
2    2       123
3    1       123
4    2      123
4    2      123
4    2       123
页面需要显示
name  class  shool
1     2       re
      2       123
      2       123
2     2        123
3     1       123
4     2      123
      2       123
      2       123
其中name空的为跨行了的,现在怎么写sql和在页面来显示?我写了一个sql但是不能跨行显示,也就是
三个1、三个4全部记录都完全一行一行显示出来了。急求高手出招。 分全抛
     

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【pilishou】截止到2008-06-24 17:33:43的历史汇总数据(不包括此帖):
    发帖数:9                  发帖分:270                
    结贴数:8                  结贴分:240                
    未结数:1                  未结分:30                 
    结贴率:88.89 %            结分率:88.89 %            
    楼主加油
      

  2.   

    执行判断吧 判断如果 不为那个记录的第一条记录 就把那列的display设置为none
      

  3.   

    sql语句没关系啊,呵呵,只要sql语句写出来了,显示的问题交给页面吧。是否显示多个4或者1在页面上处理一下就好啦。
      

  4.   

    楼主想用sql解决还是想在显示的时候解决阿???
      

  5.   

    无论在sql解决还是在页面上解决都可以,页面显示出效果就好了
    关键是在页面上怎么控制那些该跨行的怎么夸,是用两个sql语句分别把两个表里的内容查出来再在页面上判断还是用一条关联语句查出来在页面上判断好
    最好能给我做个例子,只需要
    for(int i;i<list.size();i++)
    {
      .....
    }
    像这样写清楚就好
      

  6.   

    <%String xxx;
    ResultSet rs=executeQuery(sql);
    rs.next();
    xxx=rs.getString(1);
    %>
    显示第一行数据
    <%
    while(rs.next()){
    if(rs.getString(1).equals(xxx)){
    显示空;
    }else{
    显示name;
    }
    xxx=rs.getString(1);
    }%>大概是这样吧   这个和SQL没什么关系  只与前台显示有关
      

  7.   

    我说的出现的name不能显示空而是跨了行的
      

  8.   

    alickma 的方法,我的查的数据库不是在页面上呀,我在后台查出已经放在list中,那样在页面上那些方法就不行了吧
      

  9.   

    你可以循环你的list啊
    道理是一样的啊
      

  10.   

    大家知道怎么给count 查出来的结果起别名吗?
      

  11.   


    你放在LIST中不也是一样的吗???  
    list是个array吧  在页面比较数据不就完了给count别名也是一样的用AS就可以了