簡體   English   中英

VB.net MYSQL-兩次之間在數據庫中計數秒

[英]VB.net MYSQL - Count Seconds in Database between 2 times

您好,我在vb.net上遇到了一些問題,不確定該朝哪個方向前進。

該程序的前端用於計算某個進程的特定停機時間的秒數。

數據庫具有下表和示例數據:

  • 狀態| 開始日期| 停止日期|


  • 正在運行27/08/2012 11:10:11 27/08/2012 11:10:22 11

  • 正在運行27/08/2012 11:10:11 27/08/2012 11:10:22 11
  • 正在運行27/08/2012 12:14:27 27/08/2012 12:14:57 30

在后端,所有我想做的事情是使用日期選擇器為日期填充秒數總和,當執行查詢時,我使用日期選擇器文本並在其末尾添加時間,以免出現意外沒有用,它也只考慮開始日期,而不考慮停止日期,因為我試圖在該時間范圍內累加,並且我希望有人可以提供幫助,這是我在下面嘗試的代碼:

Dim DTimePicker1 = DateTimePicker1.text & " 11:00:00"
        Dim DTimePicker2 = DateTimePicker1.text & " 12:00:00"

        cmd.Parameters.Clear()
        cmd.CommandText = "SELECT SUM(seconds) FROM sqlccmlinestatus WHERE status = 'Running' and startdate BETWEEN @BEG AND @END"
        cmd.Parameters.AddWithValue("@BEG", DTimePicker1)
        cmd.Parameters.AddWithValue("@END", DTimePicker1)
        Label70.Text = cmd.ExecuteScalar()

任何幫助都會很棒。

非常感謝,皮特

Dim D1 as Date = DateTimePicker1.Value
Dim D2 as Date = DateTimePicker2.Value
Dim DTimePicker1 as new Date(D1.Year, D1.Month, D1.Day, 11, 0, 0)
Dim DTimePicker2 as new Date(D2.Year, D2.Month, D2.Day, 12, 0, 0)
cmd.Parameters.Clear()
cmd.CommandText = "SELECT SUM(seconds) FROM sqlccmlinestatus WHERE status = 'Running' and startdate BETWEEN @BEG AND @END"
cmd.Parameters.AddWithValue("@BEG", DTimePicker1.ToString("yyyy-MM-dd HH:mm:ss.fff"))
cmd.Parameters.AddWithValue("@END", DTimePicker2.ToString("yyyy-MM-dd HH:mm:ss.fff"))
Label70.Text = cmd.ExecuteScalar()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM