C# 如何在ado.net中获取特定列值

C# 如何在ado.net中获取特定列值,c#,sql,sql-server,datatable,sqldatareader,C#,Sql,Sql Server,Datatable,Sqldatareader,我有一个sql查询,结果如下 Column 1 : Column 2 -350000 : -349000 -217500 : -565500 我正在尝试获取第二行的第二列的值 这是-565500 请告诉我如何实现这一点您有多种方法,例如: 使用SqlDataAdapter填充DataTable: DataTable table = new DataTable(); using (var con = new SqlConnection("connection string"))

我有一个sql查询,结果如下

Column 1   : Column 2
-350000    : -349000
-217500    : -565500
我正在尝试获取第二行的第二列的值

这是
-565500


请告诉我如何实现这一点

您有多种方法,例如:

使用
SqlDataAdapter
填充
DataTable

DataTable table = new DataTable();
using (var con = new SqlConnection("connection string"))
using (var da = new SqlDataAdapter("Sql-Query", con))
    da.Fill(table);
object secondRowSecondColumnValue = table.Rows[1][1];
如果您知道它是一个
int

int value = table.Rows[1].Field<int>(1);

如果您只想要该值,最好的选择是首先只选择该值

int? value = null;
using (var con = new SqlConnection("connection string"))
using(var cmd = new SqlCommand("Sql-Query", con))
{
    con.Open();
    int row = 0;
    using (var rd = cmd.ExecuteReader())
    {
        while (rd.Read())
        {
            row++;
           if (row == 2)
           {
               value = rd.GetInt32(1);
               break;
           }
        }
    }
}