【发布时间】:2012-03-25 04:01:07
【问题描述】:
我有一个查询,我从数据库中获取一些列,这是简单的选择语句,然后我将列添加到这个数据表中:
dt.Columns.Add(new DataColumn("ratio", typeof(double)));
然后我有另一个名为 Rank 的列,它再次手动添加如下:
dt.Columns.Add(new DataColumn("Rank", typeof(int)));
现在我如何首先按比率排序,然后使用比率添加排名,例如比率越高,排名越高,例如,如果比率是 3、5 和 9,一旦按比率排序,它应该是:
rank ratio
1 9
2 5
3 3
编辑:
比率是通过将我的查询中的两列相除来计算的
foreach (DataRow row in dt.Rows)
{
row["Ratio"] = (Convert.ToDecimal(row["LastMonth"]) / NoOfBranches).ToString("0.##");
}
谢谢
【问题讨论】:
-
如果您告诉我们您是如何确定比率的,我可以让您直接从 SQL Server 获取该查询(假设那是您的 RDBMS),而无需在 C# 代码中添加它们
-
您能否仅使用您的数据获得每一行的比率,或者有一个应用程序规则来获得它?
-
@Adrian 我在我的 sql 查询中使用两个字段计算比率 - 我将更新问题
-
@LuiggiMendoza 我得到了 dt.rows 上每个循环的基于行的比率,并将我的两个查询列除以得到比率
-
@Sam1 看起来您可以在查询中生成比率,无需在运行时动态添加列。
标签: c# sql sorting datacolumn