Sql 在ms access中获取日期大于1天的最后一个事务
我有以下代码:Sql 在ms access中获取日期大于1天的最后一个事务,sql,vb.net,ms-access-2010,Sql,Vb.net,Ms Access 2010,我有以下代码: cnn.Open() query = "SELECT LAST(AnnualPayments.DueDate), Members.FirstName, Members.LastName " & _ "FROM AnnualPayments INNER JOIN Members ON AnnualPayments.MemID = Members.ID " & _ "WHERE (((DateDiff('d',
cnn.Open()
query = "SELECT LAST(AnnualPayments.DueDate), Members.FirstName, Members.LastName " & _
"FROM AnnualPayments INNER JOIN Members ON AnnualPayments.MemID = Members.ID " & _
"WHERE (((DateDiff('d', Now(), AnnualPayments.DueDate)) < 1)) " & _
"GROUP BY Members.FirstName, Members.LastName, AnnualPayments.DueDate " & _
"ORDER BY AnnualPayments.DueDate DESC"
cmd = New OleDbCommand(query, cnn)
Dim dt As New DataTable
ds = New DataSet
ds.Tables.Add(dt)
da = New OleDbDataAdapter(cmd)
da.Fill(dt)
Dim newRow As DataRow
For Each newRow In dt.Rows
MainForm.lstView1.Items.Add(newRow.Item(0))
MainForm.lstView1.Items(MainForm.lstView1.Items.Count - 1).SubItems.Add(newRow.Item(1))
MainForm.lstView1.Items(MainForm.lstView1.Items.Count - 1).SubItems.Add(newRow.Item(2))
Next
Catch ex As Exception
GetErrorMessage(ex)
Finally
CloseConnection()
End Try
cnn.Open()
query=“选择LAST(AnnualPayments.DueDate)、Members.FirstName、Members.LastName”&_
“从AnnualPayments内部连接AnnualPayments.MemID=Members.ID上的成员”&_
其中(((DateDiff('d',Now(),AnnualPayments.DueDate))<1))”&_
“按成员分组.FirstName、Members.LastName、AnnualPayments.DueDate”&_
“按年度付款的订单。到期日说明”
cmd=新的OleDbCommand(查询,cnn)
Dim dt作为新数据表
ds=新数据集
ds.Tables.Add(dt)
da=新的OleDbDataAdapter(cmd)
da.填充(dt)
将newRow设置为DataRow
对于dt.行中的每个新行
MainForm.lstView1.Items.Add(newRow.Item(0))
MainForm.lstView1.Items(MainForm.lstView1.Items.Count-1).子项.Add(newRow.Item(1))
MainForm.lstView1.Items(MainForm.lstView1.Items.Count-1).子项.Add(newRow.Item(2))
下一个
特例
GetErrorMessage(ex)
最后
CloseConnection()
结束尝试
它应该做的是只显示数据,如果截止日期是从今天开始的1天以上。你能纠正我的错误吗。谢谢。你的问题不清楚,你是在找一天还是一年?你的标题写的是相差一年,但你的帖子和代码写的是相差一天。请澄清您想要哪一个。如果到期日与现在的差异超过1天,我希望显示数据。我用它来跟踪会员的年费到期情况。