【问题标题】:How can I compute the total hours from timein and timeout from my SQL database?如何从我的 SQL 数据库中计算 timein 和 timeout 的总小时数?
【发布时间】:2018-11-03 11:41:04
【问题描述】:

我想计算多行中的总时间(超时 - 时间)(以小时为单位),其中行的employee_ID 值为 1 并在两个 datetimepicker 之间获取这些值?这可能吗?

【问题讨论】:

  • 你说的是行,是数据库行还是datagridview行?如果您的问题与数据库有关,则您没有提供 SQL 尝试或表结构,因此没有足够的信息。对我来说还不清楚,我建议你编辑你的问题并改进它。
  • 它们来自datagridview,而datagridview来自数据库

标签: c# sql winforms visual-studio-2013


【解决方案1】:

只需过滤 Employee_ID = 1 以及所选日期之间的进出时间。

然后你可以找到每一行的总小时数

TimeSpan timeSpan = timeOut.Subtract(timeIn);
double totalHours = timeSpan.TotalHours;

并总结这些 - 比如:

double totalHours = 0;
// loop the filtered rows:
    totalHours += timeOut.Subtract(timeIn).TotalHours;
//
// assign totalHours to a textbox to display the result.

【讨论】:

  • 我会重新解释我的问题(抱歉我的英语不好)。在我的 c# 表单中有一个文本框,您可以在其中输入 Employee_ID 和一个按钮,单击该按钮将显示行(Employee_ID,Time_In,Time_Out),其中包含从我的数据库到 datagridview 的值。
  • 然后让您的点击事件继续循环结果行并使用类似于上述表达式的表达式总结总小时数。
  • 我想在 !my form@Gustav 中获取显示的 datagridview 中的总小时数
  • 是的 - 遍历数据网格视图的行,计算每行的总小时数,并将这些添加到变量 totalHours,如图所示。完成后,将变量的值分配给将显示总数的标签或文本框:= totalHours.ToString();
猜你喜欢
  • 2012-11-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-26
  • 1970-01-01
  • 2019-05-05
  • 1970-01-01
相关资源
最近更新 更多