我有一个 SQL 查询,使用 Visual Studio 查询窗口生成在其下方找到的结果:
SELECT SUM(TaskLength) AS TaskLength
FROM myTable
WHERE EventStartTime BETWEEN '2019/8/17' AND '2019/8/19'
GROUP BY TaskName
ORDER BY TaskLength
查询结果窗口产生以下内容:
TaskName TaskLength
--------------------------
Idle Time 20
Start Shift 31
Downtime 85
Engineering 120
Part Prep 141
Maintenance 172
Production 417
我下面的 C# 代码仅返回一个字符串,表示一行中的一列。
using (SqlConnection con = new SqlConnection(_connectionString))
{
string query = @"SELECT SUM(TaskLength) AS TaskLength
FROM myTable
WHERE EventStartTime BETWEEN '2019/8/17' AND '2019/8/19'
GROUP BY TaskName
ORDER BY TaskLength";
using (SqlCommand cmd = new SqlCommand(query, con))
{
con.Open();
object result = cmd.ExecuteScalar();
string totalMinutes = Convert.ToString(result);
}
}
返回的对象是否cmd.ExecuteScalar代表整个结果表?
如果没有,还有其他方法可以做到这一点。我的想法是将结果保存到中间表(如果还没有这样做)并将其保存到那里的 .csv 文件,除非有更好的方法。
陪伴而非守候
相关分类