日期:2014-05-18  浏览次数:20453 次

谁能提供一个关于排序问题的代码
我要给数据库中的字段内容排序,比如是“分数”字段,给按从小到大排序,我需要思路和代码,怎么把数据库中的字段提取出来,请高手指教


------解决方案--------------------
select 分数 from yourTable order by 分数
------解决方案--------------------
在给你段代码,里面运用的是Northwind数据库,在前台加句话 <%=content%>
public string content= " ";
private void Page_Load(object sender, System.EventArgs e)
{
DataSet ds=new DataSet();
if(Request[ "type "]==null)
{
SqlConnection conn=new SqlConnection( "Server=.;uid=sa;pwd=;database=Northwind ");
SqlDataAdapter sqla=new SqlDataAdapter( "SELECT EmployeeID, LastName, FirstName, Title FROM Employees ",conn);
sqla.Fill(ds);
}
else if(Request[ "type "]== "EmployeeID ")
{
SqlConnection conn=new SqlConnection( "Server=.;uid=sa;pwd=;database=Northwind ");
SqlDataAdapter sqla=new SqlDataAdapter( "SELECT EmployeeID, LastName, FirstName, Title FROM Employees ORDER BY "+Request[ "type "]+ " DESC ",conn);
sqla.Fill(ds);
}
content= " <table border=1> ";
content+= " <tr> ";
content+= " <td> <a href= '?type=EmployeeID '> EmployeeID </a> </td> ";
content+= " <td> LastName </td> ";
content+= " <td> FirstName </td> ";
content+= " <td> Title </td> ";
content+= " </tr> ";

for(int i=0;i <ds.Tables[0].Rows.Count;i++)
{
content+= " <tr> ";
content+= " <td> "+ds.Tables[0].Rows[i].ItemArray[0].ToString()+ " </td> ";
content+= " <td> "+ds.Tables[0].Rows[i].ItemArray[1].ToString()+ " </td> ";
content+= " <td> "+ds.Tables[0].Rows[i].ItemArray[2].ToString()+ " </td> ";
content+= " <td> "+ds.Tables[0].Rows[i].ItemArray[3].ToString()+ " </td> ";
content+= " </tr> ";
}

content+= " </table> ";
}
------解决方案--------------------
能在sql 语句 update 后面加 order by 分数吗

----------- 
不可以
------解决方案--------------------
能在sql 语句 update 后面加 order by 分数吗
---------------------
为什么会有这想法呢,难道你想在更新一两条数据后,对数据库中整个表的内容重新排序-_-#

那样太浪费资源,也根本没那个必要,数据库中的数据顺序如何无须理会,只要最终呈现给客户的,是经过排序的数据就可以了
------解决方案--------------------
呵呵。排序更新不是不可以实现的,如果你的数据量太大的话没这个必要吧。

现在很多论坛的后台里的版块是可以排序的,这个很简单,设一个排序ID字段,在sqlserver中存储过程直接编写是将某条数据上移还是下调就可以了。access数据库会麻烦一些。