1

我有这个代码:

SqlCommand command = new SqlCommand("Select max(ID) from otazky", connection);  
SqlDataReader reader = command.ExecuteReader();  

int id = reader.GetInt32(reader.GetOrdinal("ID"));

我读到 max 函数不会从 SQL 返回行,而只是返回 1 个值,如何将该值输入 asp?

4

2 回答 2

2

给它一个别名,例如MaxId

SqlCommand command = new SqlCommand("Select max(ID) AS MaxId from otazky", connection);  

然后您可以使用此别名选择它。

int id = reader.GetInt32(reader.GetOrdinal("MaxId"));
于 2013-04-27T21:51:06.337 回答
0

如下更改您的 SELECT 查询:

SqlCommand command = new SqlCommand("SELECT MAX(ID) as MAX FROM otazky", connection);  
SqlDataReader reader = command.ExecuteReader();  

int id = reader.GetInt32(reader.GetOrdinal("MAX"));

您必须为查询中使用的任何聚合 SQL 函数提供列名别名(使用 AS)。

于 2013-04-27T21:51:44.620 回答