如题开发语言:javaSQL2000数据库数据表:testCREATE TABLE [dbo].[test] (
[id] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[name] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[num1] [int] NULL ,
[num2] [int] NULL 
) ON [PRIMARY]
GO
表信息
id  name     num1    num2
--------------------------------------
1   测试1    11      12
2   测试2    21      22
3   测试3    31      32
4   测试4    41      42
5   测试5    51      52
String sql=("select name as 名字,num1,num2 from test");
ResultSet rs=con.ExecQuery(sql);得到的结果是  名称     num1    num2
--------------------------------------
  测试1    11      12
  测试2    21      22
  测试3    31      32
  测试4    41      42
  测试5    51      52
按列依次读取并打印出来,达到的效果:测试1
测试2
测试3
测试4
测试5
11
21
31
41
51
12
22
32
42
52

请高手们出手相助。

解决方案 »

  1.   

    use union all
    ----------------------select name from test union all select convert(varchar,num1) from test union all select convert(varchar,num2) from test
      

  2.   

    SQL语句就是这样:
    select name as 名字,num1,num2 from test我不是想要个能实现的SQL语句我是要将
    ResultSet rs=con.ExecQuery(sql);
    执行的结果按照竖列的形式读出来,需要的是JAVA代码
      

  3.   

    String[] ary = new String[16];
    int i = 0;
    while(rs.hasNext()){
    ary[i] = 第一个字段;
    ary[i+4] = 第二个字段
    ary[i+8] = 第三个字段
    ary[i+12] = 第四个字段
    i++;
    }
    或者你可以定义成一个二维数组再转置。
      

  4.   

    int i = 0,row = 0;
    rs.last();
    row = rs.getRow();
    String[] records = new String[row*3];
    rs.first();
    while(rs.next()){
    records[i] = rs.getString(1);
    records[i + row] = rs.getString(2);
    records[i + row*2] = rs.getString(3);
    }
    // 下面为遍历输出records代码
    ...(略)
      

  5.   

    maihao110的答案还行吧,我用自己的方式解决了。谢谢了