使用C#获取表中某列的最大值而不使用" Max(....)"?

时间:2016-03-06 23:39:52

标签: c# sql-server

我不是编程方面的专家,有时候我在工作时自由挑战自己,正如标题所说,只需使用简单的for循环来获取列的最大值没有使用" Max(...)",这可能吗?

编辑:这是一个例子

string getMax()
{
    SqlCommand com = new SqlCommand("Select Max(UnitPrice) From Products", con);
    con.Open();
    string mx = com.ExecuteScalar().ToString();
    con.Close();
    return mx;
}

我指的是SQLCommand中的Max,对不起这个混乱。

2 个答案:

答案 0 :(得分:4)

  

只使用简单的for循环来获取列的最大值而不使用“Max(...)”,这可能吗?

嗯,实施Max的人没有Max可供他们使用,因为尚未编写。他们写了。所以你的问题的答案是“是的,这是可能的”。

如果您想知道他们是如何做到的,阅读Max 的源代码,然后您就会知道。

答案 1 :(得分:3)

这绝对有可能。 想想Max()可能在幕后工作。 考虑如何确定一个数字是否大于另一个数字,然后在for循环中应用该逻辑,每次跟踪最大数字。