【问题标题】:Select last 24 hours data from SQL Server in VB.NET从 VB.NET 中的 SQL Server 中选择过去 24 小时的数据
【发布时间】:2023-04-01 00:13:01
【问题描述】:

我的表中有两列,DateTotal_Amount。我需要显示过去 24 小时的数据,并对结果求和并使用 VB.NET 在文本框中显示该总和。

Dim cmd As New SqlCommand
cmd.Connection = cn
cmd.CommandText = "Select Sum(Total_Amount) as Total_AmountSum from Table_10"

Dim adapter As New SqlDataAdapter(cmd)
Dim table As New DataTable()
adapter.Fill(table)

If table.Rows.Count() > 0 Then
    TextBox1.Text = table.Rows(0)("Total_AmountSum").ToString()
End If

【问题讨论】:

  • 问题是什么?你试过WHERE吗?
  • 如果您使用的是 SQL Server - 请使用 sql-server 标签 - 而不是分别使用 sqlserver - 谢谢

标签: sql-server vb.net


【解决方案1】:

你必须在这里使用DATEADD

试试这个

过去 24 小时

    Dim cmd As New SqlCommand
    cmd.Connection = cn
    cmd.CommandText = "Select Sum(CASE WHEN [Date] BETWEEN DATEADD(day, -1, GETDATE()) AND GETDATE() THEN Total_Amount END) As Total_AmountSum from Table_10"
    Dim adapter As New SqlDataAdapter(cmd)
    Dim table As New DataTable()
    adapter.Fill(table)
    If table.Rows.Count() > 0 Then
        TextBox1.Text = table.Rows(0)("Total_AmountSum").ToString()
    End If

过去 1 个月

    Dim cmd As New SqlCommand
    cmd.Connection = cn
    cmd.CommandText = "Select Sum(CASE WHEN [Date] BETWEEN DATEADD(mm, -1, GETDATE()) AND GETDATE() THEN Total_Amount END) As Total_AmountSum from Table_10"
    Dim adapter As New SqlDataAdapter(cmd)
    Dim table As New DataTable()
    adapter.Fill(table)
    If table.Rows.Count() > 0 Then
        TextBox1.Text = table.Rows(0)("Total_AmountSum").ToString()
    End If

过去 1 周

Dim cmd As New SqlCommand
cmd.Connection = cn
cmd.CommandText = "Select Sum(CASE WHEN [Date] BETWEEN DATEADD(ww, -1, GETDATE()) AND GETDATE() THEN Total_Amount END) As Total_AmountSum from Table_10"
Dim adapter As New SqlDataAdapter(cmd)
Dim table As New DataTable()
adapter.Fill(table)
If table.Rows.Count() > 0 Then
    TextBox1.Text = table.Rows(0)("Total_AmountSum").ToString()
End If

【讨论】:

  • 亲爱的上个月编码不工作我在表中创建了 31 行,但它也获得了最后 31 列的记录
  • 亲爱的,我需要再查询一次每周数据
  • @Sattar5 发布一个新问题
【解决方案2】:

您可能必须使用以下查询:

Select Sum(Total_Amount) as Total_AmountSum from Table_10
WHERE   [Date]>= DATEADD(day, -1, GETDATE())

【讨论】:

  • 文本框中无任何显示
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-28
  • 2020-09-06
  • 1970-01-01
  • 2019-12-29
相关资源
最近更新 更多