SQL根据字符串类型字段进行排序,可以在取值的时候处理

  DataTable dt = DB.ExecuteDataTable(sql.ToString(), CommandType.Text, null);//数据源
            dt.Columns.Add("status", Type.GetType("System.Int32"));//新增字段进行排序,int类型
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                if (dt.Rows[i]["proj_status"].ToString() == "wangong")//如果项目状态是完工
                {
                    dt.Rows[i]["status"] = 1;
                }
                else if (dt.Rows[i]["proj_status"].ToString() == "heding")//如果项目状态是核定
                {
                    dt.Rows[i]["status"] = 2;
                }
                else//其他情况
                {
                    dt.Rows[i]["status"] = 3;
                }
            }
            DataView dataView = dt.DefaultView;//从新进行排序
            dataView.Sort = "status asc";
            dt = dataView.ToTable();

你可能感兴趣的:(SQL根据字符串类型字段进行排序,可以在取值的时候处理)