我希望能够按照列索引而不是列名对数据表进行排序。我可以使用SQL的ORDER BY 2
或ORDER BY 3 DESC, 4 DESC
来实现这一点。但由于数据库性能问题,我想通过使用CPU性能来完成。
那么我该如何在C#中实现呢?
以下示例对我无效:
sortColumn = "3 desc, 4 desc";
dt.DefaultView.Sort = sortColumn.ToString();
dt = dt.DefaultView.ToTable();
我希望能够按照列索引而不是列名对数据表进行排序。我可以使用SQL的ORDER BY 2
或ORDER BY 3 DESC, 4 DESC
来实现这一点。但由于数据库性能问题,我想通过使用CPU性能来完成。
那么我该如何在C#中实现呢?
以下示例对我无效:
sortColumn = "3 desc, 4 desc";
dt.DefaultView.Sort = sortColumn.ToString();
dt = dt.DefaultView.ToTable();
dt.DefaultView.Sort = sortColumn;
dt = dt.DefaultView.ToTable();
与其使用
sortColumn = "3 desc, 4 desc";
你可以使用
sortColumn = dt.Columns[3].ColumnName + " DESC," + dt.Columns[4].ColumnName + " DESC";
这样做可以帮助你更好地排序表格。
dt.DefaultView.Sort = dt.Columns[index].ColumnName + " DESC";
的意思是将数据表 dt 按照指定列的降序排序。其中,index 是指定列的索引,ColumnName 是指定列的名称。