日期:2014-05-17  浏览次数:20557 次

ASP.NET MSSQL读出数据后排序处理

string sql = "SELECT a,b FROM cc ORDER BY Id ASC";
SqlCommand command = new SqlCommand(sql, connection);
SqlDataReader dr = command.ExecuteReader();
while (dr.Read())
{
Response.Write("第" + dr["a"].ToString() + "名:" + dr["b"].ToString() + "<br>";
}
dr.Close();
显示结果:
第1名:aaaa
第1名:sass
第1名:ggfg
第8名:fgfg
第8名:ffgf
第9名:bxbb
第10名:fbfb
第10名:bffb

如果我想按照下面这样显示,应该怎么处理

第1名:
aaaa
sass
ggfg
第8名:
fgfg
ffgf
第9名:
bxbb
第10名:
fbfb
bffb

------解决方案--------------------
int rank=0;
string sql = "SELECT a,b FROM cc ORDER BY Id ASC";
 SqlCommand command = new SqlCommand(sql, connection);
 SqlDataReader dr = command.ExecuteReader();
 while (dr.Read())
 {
   if(rank!=(int)dr["a"])
   {
      Response.Write("第" + dr["a"].ToString()+ "名:<br>");
      rank=(int)dr["a"];
   }
    Response.Write( dr["b"].ToString() + "<br>");  
 }
 dr.Close();